From e3d11a499223251afd75ca7600d26e771364d244 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 5 Aug 2026 05:26:57 +1200 Subject: [PATCH 01/95] Fix command-line tools hanging forever on a modal message box `qelectrotech --resave examples/schema_indus.qet out.qet` never returns. It is not slow -- ten minutes of wall clock consumed 0.16s of CPU, so it is blocked, not working. The GUI opens the same project without complaint, so the file is fine and the fault is in the headless path. A backtrace of the stuck process: main CLIExport::run QETProject::QETProject(QString const&, QObject*) QETProject::openFile(QFile*) QETProject::readProjectXml(QDomDocument&) QET::QetMessageBox::warning(...) QDialog::exec() <- waits forever That project records version="0.3", so loading it raises the "partially compatible with your version" warning. Interactively somebody presses Open; with no display nobody can, and exec() spins its event loop indefinitely. Any modal box reachable while loading does this -- the version warning is just the one an example file happens to trigger. Fixed at the wrapper all 52 call sites already go through rather than at the one warning, so the whole class is closed: QetMessageBox gains a non-interactive mode which writes the message to stderr and returns an answer instead of constructing a dialog. main.cpp turns it on in the CLI branch, beside the existing setBackupEnabled(false). The answer is the caller's defaultButton when it gave one, otherwise the first "carry on" button offered (Ok, Open, Yes, Save...), otherwise the first button set. Both warnings in readProjectXml offer Open|Cancel and abort on Cancel, so they resolve to Open and the project loads, which is what a batch invocation wants. The text still reaches the user on stderr, where previously it was lost inside an invisible dialog. GUI behaviour is unchanged: the flag defaults to false and is set in exactly one place, the command-line branch of main(). Verified: schema_indus.qet goes from hanging to resaving in 0.3s; all 23 example projects now complete a double-resave with element, conductor, terminal and uuid sets intact; unit tests pass. --- sources/main.cpp | 6 +++ sources/qetmessagebox.cpp | 90 +++++++++++++++++++++++++++++++++++++++ sources/qetmessagebox.h | 22 ++++++++++ 3 files changed, 118 insertions(+) diff --git a/sources/main.cpp b/sources/main.cpp index eede1bfb8..e723d0d43 100644 --- a/sources/main.cpp +++ b/sources/main.cpp @@ -19,6 +19,7 @@ #include "machine_info.h" #include "qet.h" #include "qetapp.h" +#include "qetmessagebox.h" #include "qetproject.h" #include "singleapplication.h" #include "utils/qetsettings.h" @@ -249,6 +250,11 @@ QGuiApplication::setHighDpiScaleFactorRoundingPolicy(QetSettings::hdpiScaleFacto // runs on a background thread referencing the project and races the // process exit (intermittent segfault in QET::writeToFile). QETProject::setBackupEnabled(false); + // Answer message boxes instead of showing them: opening a project + // saved by an older QElectroTech raises a warning from + // QETProject::readProjectXml(), and with nobody able to dismiss it + // QDialog::exec() would spin its event loop forever. + QET::QetMessageBox::setNonInteractive(true); return CLIExport::run(export_app.arguments()); } } diff --git a/sources/qetmessagebox.cpp b/sources/qetmessagebox.cpp index 31d6e41a8..2731baf00 100644 --- a/sources/qetmessagebox.cpp +++ b/sources/qetmessagebox.cpp @@ -17,6 +17,84 @@ */ #include "qetmessagebox.h" +#include + +namespace { + bool g_non_interactive = false; + + /** + @brief autoAnswer + Report a message box on stderr and pick an answer, for use when there + is no user to click anything. @see QET::QetMessageBox::setNonInteractive + @param severity : short word naming the kind of box, for the log line + @param title + @param text + @param buttons : the buttons the caller offered + @param defaultButton : the caller's preferred answer, may be NoButton + @return the button to report as pressed + */ + QMessageBox::StandardButton autoAnswer( + const char *severity, + const QString &title, + const QString &text, + QMessageBox::StandardButtons buttons, + QMessageBox::StandardButton defaultButton) + { + //Honour the caller's own default when it named one. + if (defaultButton != QMessageBox::NoButton + && (buttons & defaultButton)) { + QTextStream(stderr) << severity << ": " << title << " -- " << text + << "\n(no display: answered with the caller's default button)\n"; + return defaultButton; + } + + //Otherwise prefer a "carry on" answer over one that cancels, so a + //batch run completes rather than silently doing nothing. + static const QMessageBox::StandardButton preference[] = { + QMessageBox::Ok, QMessageBox::Open, QMessageBox::Yes, + QMessageBox::Save, QMessageBox::Apply, QMessageBox::YesToAll, + QMessageBox::Retry, QMessageBox::Ignore, QMessageBox::Close + }; + for (auto candidate : preference) { + if (buttons & candidate) { + QTextStream(stderr) << severity << ": " << title << " -- " << text + << "\n(no display: continuing)\n"; + return candidate; + } + } + + //Nothing affirmative on offer -- fall back to whatever is set. + for (int bit = QMessageBox::Ok; bit <= QMessageBox::RestoreDefaults; bit <<= 1) { + auto candidate = static_cast(bit); + if (buttons & candidate) { + QTextStream(stderr) << severity << ": " << title << " -- " << text + << "\n(no display: answered automatically)\n"; + return candidate; + } + } + + QTextStream(stderr) << severity << ": " << title << " -- " << text + << "\n(no display: no button offered)\n"; + return QMessageBox::NoButton; + } +} + +/** + @brief QET::QetMessageBox::setNonInteractive + @param non_interactive +*/ +void QET::QetMessageBox::setNonInteractive(bool non_interactive) { + g_non_interactive = non_interactive; +} + +/** + @brief QET::QetMessageBox::isNonInteractive + @return true when message boxes are answered without a user +*/ +bool QET::QetMessageBox::isNonInteractive() { + return g_non_interactive; +} + /** @see Documentation Qt pour QMessageBox::critical */ @@ -27,6 +105,9 @@ QMessageBox::StandardButton QET::QetMessageBox::critical ( QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) { + if (g_non_interactive) { + return autoAnswer("Critical", title, text, buttons, defaultButton); + } #ifdef Q_OS_MACOS QMessageBox message_box( QMessageBox::Critical, @@ -59,6 +140,9 @@ QMessageBox::StandardButton QET::QetMessageBox::information( QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) { + if (g_non_interactive) { + return autoAnswer("Information", title, text, buttons, defaultButton); + } #ifdef Q_OS_MACOS QMessageBox message_box( QMessageBox::Information, @@ -91,6 +175,9 @@ QMessageBox::StandardButton QET::QetMessageBox::question ( QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) { + if (g_non_interactive) { + return autoAnswer("Question", title, text, buttons, defaultButton); + } #ifdef Q_OS_MACOS QMessageBox message_box( QMessageBox::Question, @@ -123,6 +210,9 @@ QMessageBox::StandardButton QET::QetMessageBox::warning ( QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) { + if (g_non_interactive) { + return autoAnswer("Warning", title, text, buttons, defaultButton); + } #ifdef Q_OS_MACOS QMessageBox message_box( QMessageBox::Warning, diff --git a/sources/qetmessagebox.h b/sources/qetmessagebox.h index 60238595a..6e838f4e4 100644 --- a/sources/qetmessagebox.h +++ b/sources/qetmessagebox.h @@ -27,6 +27,28 @@ namespace QET { Qt:Sheet flag, thus enabling a better MacOS integration. */ namespace QetMessageBox { + /** + Enable non-interactive mode. + + In non-interactive mode the functions below never construct a + dialog. They write the message to stderr and return an answer + immediately, so a headless run cannot block on a modal box that + nobody is there to dismiss. + + This is needed because these are reachable from the command-line + tools: opening a project written by an older QElectroTech raises + a warning from QETProject::readProjectXml(), and with no display + to click it, QDialog::exec() spins its event loop forever. + + The answer is chosen as: the caller's defaultButton when it gave + one, otherwise the first "carry on" button among those offered + (Ok, Open, Yes, Save, Apply...), otherwise the first button set. + So the two warnings above resolve to Open and the project loads, + which is what a batch invocation wants. + */ + void setNonInteractive(bool non_interactive); + bool isNonInteractive(); + QMessageBox::StandardButton critical ( QWidget *, const QString &, From e7cbb8f50e9472f7aca0bc55761230f03c15cbd6 Mon Sep 17 00:00:00 2001 From: Levi Jetzer Date: Fri, 7 Aug 2026 17:20:45 +0200 Subject: [PATCH 02/95] Reading prefixes from company collection Added a reading for company collection prefixes which are overwritten by user collection prefixes --- sources/autoNum/assignvariables.cpp | 137 +++++++++++----------------- 1 file changed, 54 insertions(+), 83 deletions(-) diff --git a/sources/autoNum/assignvariables.cpp b/sources/autoNum/assignvariables.cpp index 8e2d465ec..b39e1d361 100644 --- a/sources/autoNum/assignvariables.cpp +++ b/sources/autoNum/assignvariables.cpp @@ -703,6 +703,46 @@ namespace autonum return formula; } + /** + @brief prefixFromLabelFile + Look up a prefix for @a path in the qet_labels.xml at @a filepath. + @return the prefix, or a null QString if the file cannot be read + or holds no matching entry. + */ + static QString prefixFromLabelFile(const QString &filepath, const QString path[10], int i, int dirLevel) + { + QFile file(filepath); + if (!file.open(QFile::ReadOnly | QFile::Text)) + return QString(); + + QXmlStreamReader rxml; + rxml.setDevice(&file); + rxml.readNext(); + + while (!rxml.atEnd()) { + if (rxml.attributes().value("name").toString() == path[i]) { + rxml.readNext(); + i = i - 1; + + if (i == 0) { + for (int j = i ; j <= dirLevel ; ++j) { + + if (rxml.name().toString() == "prefix") { + return rxml.readElementText(); + } else { + while (rxml.readNextStartElement() && rxml.name().toString() != "prefix") { + rxml.skipCurrentElement(); + rxml.readNext(); + } + } + } + } + } + rxml.readNext(); + } + return QString(); + } + /** @brief elementPrefixForLocation @param location @@ -716,7 +756,6 @@ namespace autonum if (!location.isProject()) return QString(); - QXmlStreamReader rxml; QString path[10]; int i = -1; ElementsLocation current_location = location; @@ -739,91 +778,23 @@ namespace autonum dirLevel = 0; } - // Create Custom labels if qet_labels.xml exits in customElementsDir - if (current_location.fileName() != "10_electric"){ - QString custom_labels = "qet_labels.xml"; - QString customfilepath = QETApp::customElementsDir().append(custom_labels); - - QFile file(customfilepath); - file.isReadable(); - if (!file.open(QFile::ReadOnly | QFile::Text)) - return QString(); - rxml.setDevice(&file); - rxml.readNext(); - - while(!rxml.atEnd()) - { - if (rxml.attributes().value("name").toString() == path[i]) - { - rxml.readNext(); - i=i-1; - //reached element directory - if (i==0) - { - for (int j=i; j<= dirLevel; j = j +1) - { - //if there is a prefix available apply prefix - if(rxml.name().toString()=="prefix") - { - return rxml.readElementText(); - } - //if there isn't a prefix available, find parent prefix in parent folder - else - { - while (rxml.readNextStartElement() && rxml.name().toString()!="prefix") - { - rxml.skipCurrentElement(); - rxml.readNext(); - } - } - } - } - } - rxml.readNext(); - } + if (current_location.fileName() == "10_electric") { + return prefixFromLabelFile( + QETApp::commonElementsDir() + "10_electric/qet_labels.xml", + path, i, dirLevel); } - else - { - QString qet_labels = "10_electric/qet_labels.xml"; - QString filepath = QETApp::commonElementsDir().append(qet_labels); - QFile file(filepath); - file.isReadable(); - if (!file.open(QFile::ReadOnly | QFile::Text)) - return QString(); - - rxml.setDevice(&file); - rxml.readNext(); - while(!rxml.atEnd()) - { - if (rxml.attributes().value("name").toString() == path[i]) - { - rxml.readNext(); - i=i-1; - //reached element directory - if (i==0) - { - for (int j=i; j<= dirLevel; j = j +1) - { - //if there is a prefix available apply prefix - if(rxml.name().toString()=="prefix") - { - return rxml.readElementText(); - } - //if there isn't a prefix available, find parent prefix in parent folder - else - { - while (rxml.readNextStartElement() && rxml.name().toString()!="prefix") - { - rxml.skipCurrentElement(); - rxml.readNext(); - } - } - } - } + //Look in the custom collection first, then in the company + //collection, so a user override wins over the shared one. + const QStringList candidates = { + QETApp::customElementsDir() + "qet_labels.xml", + QETApp::companyElementsDir() + "qet_labels.xml" + }; + for (const QString &candidate : candidates) { + const QString prefix = prefixFromLabelFile(candidate, path, i, dirLevel); + if (!prefix.isNull()) { + return prefix; } - rxml.readNext(); - } } return QString(); } From eab9603d8a382aabb6f6fe7f1fb70545029d18db Mon Sep 17 00:00:00 2001 From: Levi Jetzer Date: Fri, 7 Aug 2026 21:52:40 +0200 Subject: [PATCH 03/95] Fixed saving coil master Removed "isVisible" check on max_slave_checkbox before saving because isVisible is maybe not true, when the ok button is pressed Then the value -1 is written and so on not saved to the elements xml --- sources/editor/ui/elementpropertieseditorwidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/editor/ui/elementpropertieseditorwidget.cpp b/sources/editor/ui/elementpropertieseditorwidget.cpp index 202cc23a5..55bcbc947 100644 --- a/sources/editor/ui/elementpropertieseditorwidget.cpp +++ b/sources/editor/ui/elementpropertieseditorwidget.cpp @@ -371,7 +371,7 @@ void ElementPropertiesEditorWidget::on_m_buttonBox_accepted() m_data.m_master_type = ui->m_master_type_cb->currentData().value(); //If the checkbox is checked, save the number; otherwise, -1 (infinity) - if (ui->max_slaves_checkbox->isVisible() && ui->max_slaves_checkbox->isChecked()) { + if (ui->max_slaves_checkbox->isChecked()) { m_data.m_max_slaves = ui->max_slaves_spinbox->value(); } else { m_data.m_max_slaves = -1; From b9153269a4936b28ecf7e98ef147ad72fb58cc7e Mon Sep 17 00:00:00 2001 From: Levi Jetzer Date: Sat, 8 Aug 2026 09:05:27 +0200 Subject: [PATCH 04/95] Fixed saving coil master -> correction Added check to the type of master so that types which are not using "max slave elements" are saved with the value -1 (infinity). --- sources/editor/ui/elementpropertieseditorwidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/editor/ui/elementpropertieseditorwidget.cpp b/sources/editor/ui/elementpropertieseditorwidget.cpp index 55bcbc947..dc492d2c6 100644 --- a/sources/editor/ui/elementpropertieseditorwidget.cpp +++ b/sources/editor/ui/elementpropertieseditorwidget.cpp @@ -371,7 +371,7 @@ void ElementPropertiesEditorWidget::on_m_buttonBox_accepted() m_data.m_master_type = ui->m_master_type_cb->currentData().value(); //If the checkbox is checked, save the number; otherwise, -1 (infinity) - if (ui->max_slaves_checkbox->isChecked()) { + if (m_data.m_master_type == ElementData::Coil || m_data.m_master_type ==ElementData::Protection || m_data.m_master_type == ElementData::Commutator && ui->max_slaves_checkbox->isChecked()) { m_data.m_max_slaves = ui->max_slaves_spinbox->value(); } else { m_data.m_max_slaves = -1; From d7c75ea5a58cd5f9eff88a61b78baa1e4bd608bf Mon Sep 17 00:00:00 2001 From: Levi Jetzer Date: Sat, 8 Aug 2026 09:07:22 +0200 Subject: [PATCH 05/95] Fixed saving coil master -> correction + Added space for a better style ;) --- sources/editor/ui/elementpropertieseditorwidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/editor/ui/elementpropertieseditorwidget.cpp b/sources/editor/ui/elementpropertieseditorwidget.cpp index dc492d2c6..6e0247687 100644 --- a/sources/editor/ui/elementpropertieseditorwidget.cpp +++ b/sources/editor/ui/elementpropertieseditorwidget.cpp @@ -371,7 +371,7 @@ void ElementPropertiesEditorWidget::on_m_buttonBox_accepted() m_data.m_master_type = ui->m_master_type_cb->currentData().value(); //If the checkbox is checked, save the number; otherwise, -1 (infinity) - if (m_data.m_master_type == ElementData::Coil || m_data.m_master_type ==ElementData::Protection || m_data.m_master_type == ElementData::Commutator && ui->max_slaves_checkbox->isChecked()) { + if (m_data.m_master_type == ElementData::Coil || m_data.m_master_type == ElementData::Protection || m_data.m_master_type == ElementData::Commutator && ui->max_slaves_checkbox->isChecked()) { m_data.m_max_slaves = ui->max_slaves_spinbox->value(); } else { m_data.m_max_slaves = -1; From 52992b31eb15684d7c95a87689f8083d15814850 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Tue, 11 Aug 2026 10:08:51 +1200 Subject: [PATCH 06/95] Fix bugtracker #306: crash when restoring backup files on startup QETDiagramEditor::openBackupFiles() deleted the just-constructed QETProject when it failed to reach ProjectState::Ok, but had no continue/else after the delete - so addProject(project) ran unconditionally on the now-dangling pointer, and addProject() immediately dereferences it (new ProjectView(project), etc.). This matches the report exactly: clicking Cancel on the restore-files dialog (which just deletes the stale markers directly, never calling openBackupFiles()) works fine, while clicking OK crashes whenever any listed backup fails to open cleanly. Because the crash happens mid- loop, cleanup for that file (and any later ones in the same batch) never completes, which also explains the reporter's second complaint that the restore list kept growing across sessions. Fix: add the missing `continue` so a failed project is skipped instead of being passed use-after-free to addProject(). Verified: clean rebuild, only the intended object file recompiled and linked successfully. I attempted a live repro by crafting a malformed stale-file marker to force ProjectState != Ok and clicking OK under Xvfb, but this local build links against real KDE Frameworks (BUILD_WITH_KF5=ON, confirmed via CMakeCache.txt) rather than the in-tree nokde/kautosavefile.cpp reimplementation I initially targeted, which uses a different marker directory/naming scheme (~/.local/share/stalefiles// via real KF5::KAutoSaveFile) that I wasn't able to reverse-engineer well enough in the time available to produce a matching malformed marker. Confidence in the fix instead rests on the code being an unambiguous, textbook use-after-free (this exact object is deleted on the line immediately above the missing continue) with a single-line, side-effect-free fix. --- sources/qetdiagrameditor.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp index 44353b655..ff04f9b47 100644 --- a/sources/qetdiagrameditor.cpp +++ b/sources/qetdiagrameditor.cpp @@ -2101,6 +2101,7 @@ void QETDiagramEditor::openBackupFiles(QList backup_files) } delete project; DialogWaiting::dropInstance(); + continue; } addProject(project); DialogWaiting::dropInstance(); From 85346305e5040d4c0a8323f37ca1cca090ee160d Mon Sep 17 00:00:00 2001 From: philippeagray Date: Wed, 12 Aug 2026 10:22:51 -0600 Subject: [PATCH 07/95] CLI export: hide terminal markers and names in rendered output Terminal::paint() draws the red terminal stroke, the blue docking dot and the terminal name whenever the diagram's drawTerminals() / drawTerminalNames() flags are set, and both default to true. The GUI export dialog clears them through Diagram::applyProperties(), but the headless CLI export (--export-pdf/--export-png/--export-svg) never did, so every terminal shipped as coloured editor UI in otherwise finished drawings. Toggle both flags off around the render in renderDiagram(), exactly like the existing grid/guides handling, and restore them afterwards. --- sources/cli_export.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sources/cli_export.cpp b/sources/cli_export.cpp index add222935..e59796a0e 100644 --- a/sources/cli_export.cpp +++ b/sources/cli_export.cpp @@ -117,11 +117,22 @@ void renderDiagram(Diagram *diagram, QPainter &painter, const QRectF &target) // and restore it afterwards. const bool was_drawing_grid = diagram->displayGrid(); const bool was_drawing_guides = diagram->displayGuides(); + // Terminal markers (red stroke + blue docking dot) and terminal names + // are editor UI: Terminal::paint() draws them whenever the diagram's + // drawTerminals()/drawTerminalNames() flags are set (default true). + // The GUI export path clears them via Diagram::applyProperties(); + // do the same here so headless exports match. + const bool was_drawing_terminals = diagram->drawTerminals(); + const bool was_drawing_terminal_names = diagram->drawTerminalNames(); diagram->setDisplayGrid(false); diagram->setDisplayGuides(false); + diagram->setDrawTerminals(false); + diagram->setDrawTerminalNames(false); diagram->render(&painter, target, source, Qt::KeepAspectRatio); diagram->setDisplayGrid(was_drawing_grid); diagram->setDisplayGuides(was_drawing_guides); + diagram->setDrawTerminals(was_drawing_terminals); + diagram->setDrawTerminalNames(was_drawing_terminal_names); } int exportPdf(QETProject &project, const QString &output) From 11357eb50498ca9daa1ddeb161b1f27669d35bb5 Mon Sep 17 00:00:00 2001 From: philippeagray Date: Wed, 12 Aug 2026 10:33:37 -0600 Subject: [PATCH 08/95] CLI export: add --show-terminals instead of hardcoding markers off --- sources/cli_export.cpp | 53 ++++++++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 20 deletions(-) diff --git a/sources/cli_export.cpp b/sources/cli_export.cpp index e59796a0e..439b328f6 100644 --- a/sources/cli_export.cpp +++ b/sources/cli_export.cpp @@ -109,7 +109,16 @@ QString diagramStem(Diagram *diagram, int index) } /// Render @p diagram into @p painter, fitting @p target to the page rect. -void renderDiagram(Diagram *diagram, QPainter &painter, const QRectF &target) +/// @p showTerminals: paint terminal markers (red stroke + blue docking +/// dot) and terminal names, as the interactive editor does. Off by +/// default — Terminal::paint() draws them whenever the diagram's +/// drawTerminals()/drawTerminalNames() flags are set (default true, so +/// headless export used to ship them as editor UI); the GUI export +/// dialog already defaults to clearing them via +/// Diagram::applyProperties(). Pass true (--show-terminals) to keep +/// them, e.g. to visually debug an unconnected pin. +void renderDiagram(Diagram *diagram, QPainter &painter, const QRectF &target, + bool showTerminals = false) { const QRect source = diagramRect(diagram); // Export without the editor grid: drawBackground() only paints it when @@ -117,17 +126,12 @@ void renderDiagram(Diagram *diagram, QPainter &painter, const QRectF &target) // and restore it afterwards. const bool was_drawing_grid = diagram->displayGrid(); const bool was_drawing_guides = diagram->displayGuides(); - // Terminal markers (red stroke + blue docking dot) and terminal names - // are editor UI: Terminal::paint() draws them whenever the diagram's - // drawTerminals()/drawTerminalNames() flags are set (default true). - // The GUI export path clears them via Diagram::applyProperties(); - // do the same here so headless exports match. const bool was_drawing_terminals = diagram->drawTerminals(); const bool was_drawing_terminal_names = diagram->drawTerminalNames(); diagram->setDisplayGrid(false); diagram->setDisplayGuides(false); - diagram->setDrawTerminals(false); - diagram->setDrawTerminalNames(false); + diagram->setDrawTerminals(showTerminals); + diagram->setDrawTerminalNames(showTerminals); diagram->render(&painter, target, source, Qt::KeepAspectRatio); diagram->setDisplayGrid(was_drawing_grid); diagram->setDisplayGuides(was_drawing_guides); @@ -135,7 +139,8 @@ void renderDiagram(Diagram *diagram, QPainter &painter, const QRectF &target) diagram->setDrawTerminalNames(was_drawing_terminal_names); } -int exportPdf(QETProject &project, const QString &output) +int exportPdf(QETProject &project, const QString &output, + bool showTerminals = false) { const QList diagrams = project.diagrams(); if (diagrams.isEmpty()) { @@ -175,7 +180,7 @@ int exportPdf(QETProject &project, const QString &output) } const QRectF target(0, 0, writer.width(), writer.height()); - renderDiagram(diagram, painter, target); + renderDiagram(diagram, painter, target, showTerminals); // Inject clickable cross-reference / folio-report hyperlinks for this // page. The geometry is rebuilt from the QPdfWriter (not a QPrinter): @@ -225,7 +230,7 @@ int exportPdf(QETProject &project, const QString &output) } int exportImages(QETProject &project, const QString &format, - const QString &out_dir) + const QString &out_dir, bool showTerminals = false) { const QList diagrams = project.diagrams(); if (diagrams.isEmpty()) { @@ -248,14 +253,16 @@ int exportImages(QETProject &project, const QString &format, gen.setViewBox(QRect(0, 0, r.width(), r.height())); gen.setTitle(diagram->title()); QPainter painter(&gen); - renderDiagram(diagram, painter, QRectF(QPointF(0, 0), r.size())); + renderDiagram(diagram, painter, QRectF(QPointF(0, 0), r.size()), + showTerminals); painter.end(); } else { // png QImage image(r.size(), QImage::Format_ARGB32); image.fill(Qt::white); QPainter painter(&image); painter.setRenderHint(QPainter::Antialiasing, true); - renderDiagram(diagram, painter, QRectF(QPointF(0, 0), r.size())); + renderDiagram(diagram, painter, QRectF(QPointF(0, 0), r.size()), + showTerminals); painter.end(); if (!image.save(path)) { err << "Failed to write '" << path << "'.\n"; @@ -779,13 +786,19 @@ bool isExportRequest(const QStringList &args) int run(const QStringList &args) { + // --show-terminals is a standalone switch (not tied to a position), + // so pull it out before the positional project/output arguments are + // collected below. + QStringList filtered = args; + const bool showTerminals = filtered.removeAll("--show-terminals") > 0; + QString flag; QStringList rest; - for (int i = 0; i < args.size(); ++i) { - if (exportFlags().contains(args.at(i))) { - flag = args.at(i); - for (int j = i + 1; j < args.size(); ++j) - rest << args.at(j); + for (int i = 0; i < filtered.size(); ++i) { + if (exportFlags().contains(filtered.at(i))) { + flag = filtered.at(i); + for (int j = i + 1; j < filtered.size(); ++j) + rest << filtered.at(j); break; } } @@ -829,7 +842,7 @@ int run(const QStringList &args) return 2; } if (format == "pdf") - return exportPdf(project, output); + return exportPdf(project, output, showTerminals); if (format == "cables" || format == "wires") return exportCsv(project, format, output); if (format == "bom") @@ -842,7 +855,7 @@ int run(const QStringList &args) return resaveProject(project, output); if (format == "settb") return setTitleBlock(project, output, rest.mid(2)); - return exportImages(project, format, output); + return exportImages(project, format, output, showTerminals); } } // namespace CLIExport From b72794bea1239edf9c054f3985f3d4bf66e6ac5f Mon Sep 17 00:00:00 2001 From: philippeagray Date: Wed, 12 Aug 2026 10:33:45 -0600 Subject: [PATCH 09/95] CLI export: document --show-terminals in cli_export.h --- sources/cli_export.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/sources/cli_export.h b/sources/cli_export.h index 2354fbfc1..fefb5b97a 100644 --- a/sources/cli_export.h +++ b/sources/cli_export.h @@ -42,9 +42,9 @@ namespace CLIExport { @return process exit code (0 on success). Usage: - qelectrotech --export-pdf - qelectrotech --export-png - qelectrotech --export-svg + qelectrotech --export-pdf [--show-terminals] + qelectrotech --export-png [--show-terminals] + qelectrotech --export-svg [--show-terminals] qelectrotech --export-cables qelectrotech --export-wires qelectrotech --export-bom @@ -57,6 +57,10 @@ namespace CLIExport { PDF: one multi-page document (one diagram per page). PNG/SVG: one file per diagram, named /_.<ext>. + --show-terminals: also paint terminal markers (red stroke + blue + docking dot) and terminal names, as the interactive editor + does; off by default, matching the GUI export dialog's + default. Has no effect on the non-image export modes. cables: wiring list (one row per conductor) as CSV. wires: list of distinct wire numbers as CSV. bom: bill of materials (one row per element) as CSV. From fb0649ceee9dcacc6f78746599e51d3227cdbfc9 Mon Sep 17 00:00:00 2001 From: Levi Jetzer <levi.jetzer@ibsys.ch> Date: Fri, 14 Aug 2026 22:23:25 +0200 Subject: [PATCH 10/95] Fixed incorrect OR and AND checks --- sources/editor/ui/elementpropertieseditorwidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/editor/ui/elementpropertieseditorwidget.cpp b/sources/editor/ui/elementpropertieseditorwidget.cpp index 6e0247687..da400ba5d 100644 --- a/sources/editor/ui/elementpropertieseditorwidget.cpp +++ b/sources/editor/ui/elementpropertieseditorwidget.cpp @@ -371,7 +371,7 @@ void ElementPropertiesEditorWidget::on_m_buttonBox_accepted() m_data.m_master_type = ui->m_master_type_cb->currentData().value<ElementData::MasterType>(); //If the checkbox is checked, save the number; otherwise, -1 (infinity) - if (m_data.m_master_type == ElementData::Coil || m_data.m_master_type == ElementData::Protection || m_data.m_master_type == ElementData::Commutator && ui->max_slaves_checkbox->isChecked()) { + if ((m_data.m_master_type == ElementData::Coil || m_data.m_master_type == ElementData::Protection || m_data.m_master_type == ElementData::Commutator) && ui->max_slaves_checkbox->isChecked()) { m_data.m_max_slaves = ui->max_slaves_spinbox->value(); } else { m_data.m_max_slaves = -1; From 9285d12333a381edc1b3d003499541897309089f Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Sun, 16 Aug 2026 10:44:53 +1200 Subject: [PATCH 11/95] Route the last load-path message box through the wrapper MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The "Système de contacts modifié" warning in QETProject::addElement()'s Erase branch called QMessageBox::warning directly, bypassing QET::QetMessageBox and so the non-interactive guard. It is reachable during a load, which is exactly the path this PR exists to unblock, so it could still hang a headless run. Behaviour is unchanged interactively, and unattended it now answers with the Yes the call site already passes as its default -- the same "continue" the previous code took. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --- sources/qetproject.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/qetproject.cpp b/sources/qetproject.cpp index 9b115458d..5a778ece8 100644 --- a/sources/qetproject.cpp +++ b/sources/qetproject.cpp @@ -1202,7 +1202,7 @@ ElementsLocation QETProject::importElement(ElementsLocation &location) // Warn if the new element introduces slave contact groups QDomElement new_kind = location.xml().firstChildElement("kindInformations"); if (!new_kind.firstChildElement("slaveContactGroups").isNull()) { - QMessageBox::StandardButton answer = QMessageBox::warning(nullptr, + QMessageBox::StandardButton answer = QET::QetMessageBox::warning(nullptr, tr("Système de contacts modifié"), tr("Le nouvel élément définit des groupes de contacts esclaves.\n" "Les éléments esclaves existants ne seront pas automatiquement " From 6061c6380990bdab64f397fdb9848fb8dd67a0ac Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Sun, 2 Aug 2026 12:43:21 +1200 Subject: [PATCH 12/95] Add wiring_list_view: from-to wiring list over the conductor tables Slice 3 of discussion #503, on top of slice 2 (#628). One row per conductor, each endpoint resolved to its element label and terminal name -- the `F1:4 -> M200:U1` shape from the original prototype. The view deviates from the SQL sketched in the discussion in two ways, both because the sketched version silently loses wires: - **No join to the `element` table.** A terminal row already carries its `element_uuid`, so joining `element` back just to read the same uuid adds nothing. Worse, it filters: `populateElementTable()` only inserts elements matching `Simple|Terminal|Master|Thumbnail`, so `Slave` elements (relay contacts and the like -- extremely common at the end of a wire) and report elements are simply absent from that table after a project load, and an inner join through it drops their conductors. - **`element_info` is LEFT joined** for the same reason. A wire whose endpoint element has no info row still belongs in a wiring list; it comes back with an empty label rather than vanishing. Losing a wire from a wiring list is a worse failure than showing one with a blank end. Note this only bites after a save/reload. The incremental `addElement()` path does not apply the type filter, so a slave element placed live is present in `element`/`element_info` and an inner join looks fine -- it is the bulk repopulate on project load that drops it. Testing only the live-editing path would have missed this entirely. Measured, comparing this view against an inner-join-through-element variant built from the same tables in the same session: | project | conductors | wiring_list_view | inner-join variant | |---|---|---|---| | Polonez MR'89 wiring diagram | 280 | 280 | 280 | | two slave contacts, after save+reload | 1 | **1** | **0** | Polonez happens to have no slave elements at conductor ends, so both agree there and the problem is invisible. The second case is the minimal reproduction: place two "Simple contact" elements (`link_type="slave"`) so autoconnect wires them, save, reload -- the sketched view returns zero rows for a project that plainly has a wire in it. Acceptance criterion held throughout: `wiring_list_view` row count equals `conductor` row count, i.e. the view itself drops nothing. Conductors already excluded upstream (legacy terminals without uuids, see #628) stay excluded; that remains the only thing missing from the list, and is what slice 4 should surface a count for. --- sources/dataBase/projectdatabase.cpp | 51 ++++++++++++++++++++++++++++ sources/dataBase/projectdatabase.h | 1 + 2 files changed, 52 insertions(+) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index 37bb3d2e6..ff48bfd80 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -505,6 +505,7 @@ bool projectDataBase::createDataBase() createElementNomenclatureView(); createSummaryView(); + createWiringListView(); prepareQuery(); updateDB(); return true; @@ -622,6 +623,56 @@ void projectDataBase::createSummaryView() } } +/** + @brief projectDataBase::createWiringListView + A from-to wiring list: one row per conductor, each endpoint resolved to + its element label and terminal name. + + Two deliberate differences from an ordinary inner-join view like + element_nomenclature_view: + + - No join to the element table. A terminal row already carries its + element_uuid, so joining element back just to read the same uuid adds + nothing -- and would actively drop rows, because populateElementTable() + only inserts elements matching Simple|Terminal|Master|Thumbnail. Slave + elements (relay contacts and the like, extremely common at the end of a + wire) and report elements are absent from that table after a project + load, so an inner join through it silently loses their conductors. + - element_info is LEFT joined for the same reason. A wire whose endpoint + element carries no info row still belongs in a wiring list; it comes + back with an empty label rather than vanishing. Losing a wire from a + wiring list is a worse failure than showing one with a blank end. + + The result is that this view returns exactly as many rows as the + conductor table holds -- what is already excluded upstream (conductors + on legacy terminals without uuids) stays excluded, and nothing new is + dropped here. +*/ +void projectDataBase::createWiringListView() +{ + QString create_view ("CREATE VIEW wiring_list_view AS SELECT " + "c.uuid AS conductor_uuid," + "c.text AS wire_number," + "t1.element_uuid AS from_element_uuid," + "ei1.label AS from_element_label," + "t1.name AS from_terminal," + "t2.element_uuid AS to_element_uuid," + "ei2.label AS to_element_label," + "t2.name AS to_terminal," + "d.pos AS diagram_position" + " FROM conductor c" + " JOIN terminal t1 ON c.terminal1_uuid = t1.uuid AND c.terminal1_element_uuid = t1.element_uuid" + " JOIN terminal t2 ON c.terminal2_uuid = t2.uuid AND c.terminal2_element_uuid = t2.element_uuid" + " LEFT JOIN element_info ei1 ON t1.element_uuid = ei1.element_uuid" + " LEFT JOIN element_info ei2 ON t2.element_uuid = ei2.element_uuid" + " JOIN diagram d ON c.diagram_uuid = d.uuid"); + + QSqlQuery query(m_data_base); + if (!query.exec(create_view)) { + qDebug() << query.lastError(); + } +} + void projectDataBase::populateDiagramTable() { QSqlQuery query_(m_data_base); diff --git a/sources/dataBase/projectdatabase.h b/sources/dataBase/projectdatabase.h index cddf53468..65ca17950 100644 --- a/sources/dataBase/projectdatabase.h +++ b/sources/dataBase/projectdatabase.h @@ -77,6 +77,7 @@ class projectDataBase : public QObject bool createDataBase(); void createElementNomenclatureView(); void createSummaryView(); + void createWiringListView(); void populateDiagramTable(); void populateElementTable(); void populateElementInfoTable(); From 44ed01ff5dab2c3822079c3190ade48495416dac Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Fri, 21 Aug 2026 19:16:35 +1200 Subject: [PATCH 13/95] Don't let the wiring list lose a wire to the diagram join The comment above this view promised that it "returns exactly as many rows as the conductor table holds", and argued carefully for the two joins that could have broken that -- no inner join to element, and element_info LEFT joined. Then it ended with an inner join to diagram that it never mentioned, which can drop rows just as easily. Feeding the real schema a conductor whose diagram_uuid has no diagram row returned 2 view rows for 3 conductors. With the join made LEFT it returns 3, with a null folio instead of a missing wire. In practice this should never fire: QETProject::diagramAdded is connected to addDiagram(), so the folio exists before anything can be drawn on it. But an inner join turns that into an assumption the view enforces silently, and of all the things this view can get wrong, dropping a wire from a wiring list is the one that matters most. The comment now says which joins are inner and why those two are safe. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --- sources/dataBase/projectdatabase.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index ff48bfd80..f2b3df670 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -643,10 +643,18 @@ void projectDataBase::createSummaryView() back with an empty label rather than vanishing. Losing a wire from a wiring list is a worse failure than showing one with a blank end. + - diagram is LEFT joined for the same reason. It should + always match, since QETProject::diagramAdded is wired to addDiagram() + and a conductor cannot exist before its folio -- but an inner join here + would make that an assumption the view silently enforces, and a wire + missing from a wiring list is the one failure this view must not have. + The result is that this view returns exactly as many rows as the conductor table holds -- what is already excluded upstream (conductors on legacy terminals without uuids) stays excluded, and nothing new is - dropped here. + dropped here. Only the terminal joins are inner, and both are guaranteed + by insertTerminal() running for each endpoint before the conductor row + is written. */ void projectDataBase::createWiringListView() { @@ -665,7 +673,7 @@ void projectDataBase::createWiringListView() " JOIN terminal t2 ON c.terminal2_uuid = t2.uuid AND c.terminal2_element_uuid = t2.element_uuid" " LEFT JOIN element_info ei1 ON t1.element_uuid = ei1.element_uuid" " LEFT JOIN element_info ei2 ON t2.element_uuid = ei2.element_uuid" - " JOIN diagram d ON c.diagram_uuid = d.uuid"); + " LEFT JOIN diagram d ON c.diagram_uuid = d.uuid"); QSqlQuery query(m_data_base); if (!query.exec(create_view)) { From b034b1a634da009a0a2dbb2405d8d2a185d175b1 Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Fri, 21 Aug 2026 21:06:41 +1200 Subject: [PATCH 14/95] Add --export-wiring: the wiring list, headless The wiring_list_view added by this slice was only reachable through the GUI, which meant the one thing worth proving about it -- that it still describes the project -- could not be checked without a person clicking. This is the same shape as the existing --export-bom, which reads element_nomenclature_view, and it makes the view verifiable in CI. It also makes this slice useful on its own: a from-to wiring list is a thing people want as a CSV, and it no longer waits on the dialog in the next slice. There is deliberately an overlap with --export-cables, which produces the same logical list from the document XML rather than the database. Keeping both is the point: running them and diffing them is a direct check that the cache and the document still agree, which nothing else in the codebase can do. Measured on the example corpus, the two also differ in what they can actually fill in. Rows carrying any endpoint data: --export-cables --export-wiring industrial.qet 0 / 671 541 / 671 m_000.qet 0 / 457 362 / 457 affuteuse_250h.qet 0 / 263 197 / 263 tremie_vibrante.qet 0 / 77 61 / 77 tableau_domestique.qet 58 / 130 104 / 130 Both return a row per conductor; the XML-derived one leaves the component and terminal columns empty on the older projects, and emits an unresolved "%id" in its folio column. That is not an argument for removing it -- it carries columns the view does not, and it is the independent second opinion -- but it does mean the database path is the one with the data on the projects people actually have. The terminal-name columns come back empty on most projects. That is absent source data, not a loss in transit: tableau_domestique.qet has no terminal name on 457 of 457 terminals, and industrial.qet stores the "_" placeholder on 1421 of 1790. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --- sources/cli_export.cpp | 51 ++++++++++++++++++++++++++++++++++++++++++ sources/cli_export.h | 6 +++++ 2 files changed, 57 insertions(+) diff --git a/sources/cli_export.cpp b/sources/cli_export.cpp index add222935..526207971 100644 --- a/sources/cli_export.cpp +++ b/sources/cli_export.cpp @@ -70,6 +70,7 @@ const QHash<QString, QString> &exportFlags() {"--export-cables", "cables"}, {"--export-wires", "wires"}, {"--export-bom", "bom"}, + {"--export-wiring", "wiring"}, {"--export-nets", "nets"}, {"--export-links", "links"}, {"--info", "info"}, @@ -525,6 +526,54 @@ QHash<Element *, int> folioIndex(QETProject &project) return folio; } +/// From-to wiring list: one row per conductor, each endpoint resolved to its +/// element label and terminal name. +/// +/// Reads wiring_list_view out of the project database. --export-cables produces +/// the same logical list from the document XML instead, and the two are meant +/// to agree: running both and diffing them is a direct check that the database +/// still describes the project, which is otherwise only observable through the +/// GUI. +int exportWiring(QETProject &project, const QString &output) +{ + // The project database is built lazily; force a (re)build before querying. + project.dataBase()->updateDB(); + + static const QStringList columns { + "wire_number", "from_element_label", "from_terminal", + "to_element_label", "to_terminal", "diagram_position", "conductor_uuid" + }; + + QSqlQuery query = project.dataBase()->newQuery( + "SELECT " % columns.join(", ") % + " FROM wiring_list_view ORDER BY diagram_position, wire_number"); + if (!query.exec()) { + err << "Wiring list query failed: " << query.lastError().text() << "\n"; + return 1; + } + + QString csv = columns.join(";") % "\n"; + int rows = 0; + while (query.next()) { + QStringList values; + for (int i = 0; i < columns.size(); ++i) + values << csvField(query.value(i).toString()); + csv += values.join(";") % "\n"; + ++rows; + } + + QFile file(output); + if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) { + err << "Cannot open '" << output << "' for writing.\n"; + return 1; + } + QTextStream fout(&file); + fout << csv; + file.close(); + out << "Exported " << rows << " conductor(s) -> " << output << "\n"; + return 0; +} + /// Electrical nets: groups of terminals joined into one potential. /// Walks QET's own potential graph, so each net is a connected component /// of terminals across all folios. The ground truth for connectivity. @@ -823,6 +872,8 @@ int run(const QStringList &args) return exportCsv(project, format, output); if (format == "bom") return exportBom(project, output); + if (format == "wiring") + return exportWiring(project, output); if (format == "nets") return exportNets(project, output); if (format == "links") diff --git a/sources/cli_export.h b/sources/cli_export.h index 2354fbfc1..81380f43a 100644 --- a/sources/cli_export.h +++ b/sources/cli_export.h @@ -48,6 +48,7 @@ namespace CLIExport { qelectrotech --export-cables <project.qet> <output.csv> qelectrotech --export-wires <project.qet> <output.csv> qelectrotech --export-bom <project.qet> <output.csv> + qelectrotech --export-wiring <project.qet> <output.csv> qelectrotech --export-nets <project.qet> <output.json> qelectrotech --export-links <project.qet> <output.csv> qelectrotech --info <project.qet> [output.json] @@ -60,6 +61,11 @@ namespace CLIExport { cables: wiring list (one row per conductor) as CSV. wires: list of distinct wire numbers as CSV. bom: bill of materials (one row per element) as CSV. + wiring: from-to wiring list (one row per conductor) as CSV, read from + the project database. Same logical list as `cables`, which + reads the document XML instead; the two are meant to agree, + so diffing them checks that the database still describes the + project. nets: electrical nets (connected-terminal groups) as JSON. links: element cross-references (coil/contact) as CSV, with unresolved links flagged. From 5b8d05fc1ef7c355968a5dec986308eedd7738e4 Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Sun, 2 Aug 2026 14:15:00 +1200 Subject: [PATCH 15/95] Add a wiring list dialog and an excluded-conductor count MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Slice 4 of discussion #503, on top of slice 3 (#629): the smallest surface that makes wiring_list_view visible, plus the diagnostic the view needs to be honest about what it is missing. Projet > "Liste de câblage (base de données)" opens a read-only table of wiring_list_view, headed by a line stating how many conductors are listed and, when non-zero, how many were excluded and why. Deliberately not another exporter. QET already ships a wiring-list CSV export (Projet > Exporter le plan de câblage, and --export-cables) which walks the project XML; measured on the same projects it produces a row per conductor and resolves labels correctly when the project has them. Adding a second, competing CSV would be worse, not better -- the database path's value is what it unlocks (terminal plans, BOM joins), not replacing that export. projectDataBase::excludedConductorCount() counts, from the live scene, the conductors deliberately absent from the conductor table because a terminal has no uuid. Counted from the scene precisely because the database is where those conductors are not. Verified: 671 on examples/industrial.qet (which has 1794 terminals and no terminal uuids at all, so its list is empty and now says so), 0 on a project whose elements do carry terminal uuids. KNOWN GAP, not fixed here and the reason this is opened for discussion rather than merge: after a save/reload the component columns are blank for slave elements. populateElementTable()/populateElementInfoTable() only insert Simple|Terminal|Master|Thumbnail, so slave elements -- relay contacts, i.e. a large share of real wire endpoints -- have no row in element_info for the view to read a label from. Measured on a two-slave- contact project after reload: element rows 0, element_info rows 0, terminal rows 2, conductor rows 1; the wire is listed (slice 3's LEFT JOIN keeps it) but both component names are empty, where the existing CSV export shows K1 -> K2 for the same file. Closing that gap means widening a filter shared with the nomenclature and summary views, which would change what those existing, shipped features contain. That is a maintainer decision, not one to take unilaterally inside an additive slice. --- cmake/qet_compilation_vars.cmake | 2 + sources/dataBase/projectdatabase.cpp | 36 +++++++++++ sources/dataBase/projectdatabase.h | 2 + sources/qetdiagrameditor.cpp | 14 +++++ sources/qetdiagrameditor.h | 1 + sources/ui/wiringlistdialog.cpp | 93 ++++++++++++++++++++++++++++ sources/ui/wiringlistdialog.h | 48 ++++++++++++++ 7 files changed, 196 insertions(+) create mode 100644 sources/ui/wiringlistdialog.cpp create mode 100644 sources/ui/wiringlistdialog.h diff --git a/cmake/qet_compilation_vars.cmake b/cmake/qet_compilation_vars.cmake index 57a012916..ffde16f63 100644 --- a/cmake/qet_compilation_vars.cmake +++ b/cmake/qet_compilation_vars.cmake @@ -155,6 +155,8 @@ set(QET_SRC_FILES ${QET_DIR}/sources/conductornumexport.cpp ${QET_DIR}/sources/wiringlistexport.h ${QET_DIR}/sources/wiringlistexport.cpp + ${QET_DIR}/sources/ui/wiringlistdialog.h + ${QET_DIR}/sources/ui/wiringlistdialog.cpp ${QET_DIR}/sources/conductornumexport.h ${QET_DIR}/sources/conductorprofile.cpp ${QET_DIR}/sources/conductorprofile.h diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index f2b3df670..942691af7 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -111,6 +111,42 @@ QSqlQuery projectDataBase::newQuery(const QString &query) { return QSqlQuery(query, m_data_base); } +/** + @brief projectDataBase::excludedConductorCount + @return how many conductors of the project are deliberately absent from + the conductor table because at least one of their terminals has no uuid. + + Counted from the live scene rather than from the database, precisely + because the database is where these conductors are *not*. See + addConductor() for why they are omitted: a terminal uuid comes from the + catalog .elmt definition, so an element whose definition predates that + field yields terminals with no stable identity to key on. + + This is what lets a caller tell the user "N wires are missing and here + is why", instead of silently presenting a short list as if it were + complete. +*/ +int projectDataBase::excludedConductorCount() const +{ + if (!m_project) { + return 0; + } + + int count = 0; + for (auto *diagram : m_project->diagrams()) + { + const auto conductor_list = diagram->conductors(); + for (auto *conductor : conductor_list) + { + if (conductor->terminal1->uuid().isNull() + || conductor->terminal2->uuid().isNull()) { + ++count; + } + } + } + return count; +} + /** @brief projectDataBase::addElement @param element diff --git a/sources/dataBase/projectdatabase.h b/sources/dataBase/projectdatabase.h index 65ca17950..5873d825f 100644 --- a/sources/dataBase/projectdatabase.h +++ b/sources/dataBase/projectdatabase.h @@ -49,6 +49,8 @@ class projectDataBase : public QObject void updateDB(); QETProject *project() const; QSqlQuery newQuery(const QString &query = QString()); + QSqlDatabase database() const {return m_data_base;} + int excludedConductorCount() const; void addElement (Element *element); void removeElement (Element *element); diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp index 5b2ba6779..f686f6daf 100644 --- a/sources/qetdiagrameditor.cpp +++ b/sources/qetdiagrameditor.cpp @@ -53,6 +53,7 @@ #include "ui/diagrameditorhandlersizewidget.h" #include "TerminalStrip/ui/addterminalstripitemdialog.h" #include "wiringlistexport.h" +#include "ui/wiringlistdialog.h" #include "ui/terminalnumberingdialog.h" #include <QDateTime> #include <QDebug> @@ -503,6 +504,17 @@ void QETDiagramEditor::setUpActions() } }); + // Show the wiring list read from the project database + m_project_wiring_list_view = new QAction(QET::Icons::DocumentSpreadsheet, tr("Liste de câblage (base de données)"), this); + connect(m_project_wiring_list_view, &QAction::triggered, [this]() { + QETProject *project = this->currentProject(); + if (project) + { + WiringListDialog dialog(project, this); + dialog.exec(); + } + }); + // Terminal Numbering m_terminal_numbering = new QAction(QET::Icons::TerminalStrip, tr("Numérotation automatique des bornes"), this); connect(m_terminal_numbering, &QAction::triggered, this, &QETDiagramEditor::slot_terminalNumbering); @@ -892,6 +904,7 @@ void QETDiagramEditor::setUpMenu() menu_project -> addAction(m_terminal_strip_dialog); menu_project -> addAction(m_project_terminalBloc); menu_project -> addAction(m_project_export_wiring_list); + menu_project -> addAction(m_project_wiring_list_view); menu_project -> addAction(m_terminal_numbering); #ifdef QET_EXPORT_PROJECT_DB menu_project -> addSeparator(); @@ -1680,6 +1693,7 @@ void QETDiagramEditor::slot_updateActions() m_project_export_conductor_num-> setEnabled(opened_project); m_terminal_strip_dialog -> setEnabled(editable_project); m_project_export_wiring_list -> setEnabled(opened_project); + m_project_wiring_list_view -> setEnabled(opened_project); m_terminal_numbering -> setEnabled(editable_project); #ifdef QET_EXPORT_PROJECT_DB m_export_project_db -> setEnabled(editable_project); diff --git a/sources/qetdiagrameditor.h b/sources/qetdiagrameditor.h index 0114a186e..7efa706a9 100644 --- a/sources/qetdiagrameditor.h +++ b/sources/qetdiagrameditor.h @@ -207,6 +207,7 @@ class QETDiagramEditor : public QETMainWindow *m_project_terminalBloc, ///< generate terminal block *m_project_export_conductor_num,///<Export the wire num to csv *m_project_export_wiring_list, ///< Action to export the wiring list + *m_project_wiring_list_view, ///< Action to show the wiring list read from the project database *m_terminal_numbering, ///< Action to launch terminal numbering *m_export_project_db, ///Export to file the internal database of the current project *m_tile_window, ///< Show MDI subwindows as tile diff --git a/sources/ui/wiringlistdialog.cpp b/sources/ui/wiringlistdialog.cpp new file mode 100644 index 000000000..791c5e5cf --- /dev/null +++ b/sources/ui/wiringlistdialog.cpp @@ -0,0 +1,93 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#include "wiringlistdialog.h" + +#include "../dataBase/projectdatabase.h" +#include "../qetproject.h" + +#include <QDialogButtonBox> +#include <QHeaderView> +#include <QLabel> +#include <QSqlQueryModel> +#include <QTableView> +#include <QVBoxLayout> + +/** + @brief WiringListDialog::WiringListDialog + @param project : project whose wiring list is shown + @param parent : parent widget +*/ +WiringListDialog::WiringListDialog(QETProject *project, QWidget *parent) : + QDialog(parent), + m_project(project) +{ + setWindowTitle(tr("Liste de câblage", "window title")); + resize(900, 500); + + auto *layout = new QVBoxLayout(this); + + auto *model = new QSqlQueryModel(this); + model->setQuery(QStringLiteral( + "SELECT wire_number, from_element_label, from_terminal," + " to_element_label, to_terminal, diagram_position" + " FROM wiring_list_view" + " ORDER BY diagram_position, wire_number"), + m_project->dataBase()->database()); + + model->setHeaderData(0, Qt::Horizontal, tr("Fil", "column title")); + model->setHeaderData(1, Qt::Horizontal, tr("Composant 1", "column title")); + model->setHeaderData(2, Qt::Horizontal, tr("Borne 1", "column title")); + model->setHeaderData(3, Qt::Horizontal, tr("Composant 2", "column title")); + model->setHeaderData(4, Qt::Horizontal, tr("Borne 2", "column title")); + model->setHeaderData(5, Qt::Horizontal, tr("Folio", "column title")); + + const int excluded = m_project->dataBase()->excludedConductorCount(); + const int listed = model->rowCount(); + + auto *summary = new QLabel(this); + summary->setWordWrap(true); + if (excluded > 0) + { + //The count matters more than it looks: a project whose elements + //all predate terminal uuids yields an entirely empty list, and + //without this line that is indistinguishable from a project with + //no wires in it. + summary->setText(tr("%n conducteur(s) listé(s).", "wiring list summary", listed) + % QStringLiteral(" ") + % tr("%n conducteur(s) exclu(s) : leurs éléments ne définissent pas" + " d'identifiant de borne (définition d'élément trop ancienne).", + "wiring list exclusion warning", excluded)); + } + else { + summary->setText(tr("%n conducteur(s) listé(s).", "wiring list summary", listed)); + } + layout->addWidget(summary); + + auto *view = new QTableView(this); + view->setModel(model); + view->setEditTriggers(QAbstractItemView::NoEditTriggers); + view->setSelectionBehavior(QAbstractItemView::SelectRows); + view->setAlternatingRowColors(true); + view->verticalHeader()->setVisible(false); + view->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch); + layout->addWidget(view); + + auto *buttons = new QDialogButtonBox(QDialogButtonBox::Close, this); + connect(buttons, &QDialogButtonBox::rejected, this, &QDialog::reject); + layout->addWidget(buttons); +} diff --git a/sources/ui/wiringlistdialog.h b/sources/ui/wiringlistdialog.h new file mode 100644 index 000000000..73251473c --- /dev/null +++ b/sources/ui/wiringlistdialog.h @@ -0,0 +1,48 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#ifndef WIRINGLISTDIALOG_H +#define WIRINGLISTDIALOG_H + +#include <QDialog> + +class QETProject; + +/** + @brief The WiringListDialog class + Read-only view of the project's from-to wiring list, read from the + wiring_list_view of projectDataBase. + + Deliberately not an exporter: QET already ships a wiring-list CSV export + (Projet > Exporter le plan de câblage, and --export-cables), which walks + the project XML and covers that need. This dialog exists to make the + database view inspectable, and above all to state how many conductors + are missing from it and why -- a count the CSV export cannot give, + because it never excludes anything in the first place. +*/ +class WiringListDialog : public QDialog +{ + Q_OBJECT + + public: + explicit WiringListDialog(QETProject *project, QWidget *parent = nullptr); + + private: + QETProject *m_project = nullptr; +}; + +#endif // WIRINGLISTDIALOG_H From b855d760a86839b01b4739b4a1209e2865483042 Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Sun, 2 Aug 2026 15:29:18 +1200 Subject: [PATCH 16/95] Populate every element type; move the nomenclature filter into its view Closes the gap left open by the previous commit, at the root rather than around it. populateElementTable()/populateElementInfoTable() only inserted elements matching Simple|Terminal|Master|Thumbnail. That quietly made the element table mean "the elements a nomenclature cares about" rather than "the elements of the project": slave elements (relay contacts) and report elements -- ordinary conductor endpoints -- had no row at all after a project load, so the wiring list could not name either end of a wire that terminated on one. Both tables are now populated with every ElementData::Type, and the type restriction moves into element_nomenclature_view, which is where a "what belongs in a bill of materials" decision belongs. The mask in the view is character-for-character the one the population used to apply, so a relay contact is still not a BOM line item. This is safe to do in one place because every consumer of the project database goes through a view: element_nomenclature_view (the on-diagram nomenclature table via ElementQueryWidget, the BOM dialog, and the --export-bom CLI) or project_summary_view (which does not reference element at all). Nothing queries the element or element_info tables directly -- checked across the whole tree. Regression evidence. --export-bom runs updateDB() and then queries element_nomenclature_view, so it is an exact harness for what the GUI BOM shows. Captured for 19 projects (all 17 usable examples/ plus two slave-element fixtures) before and after: - BOM content byte-identical on all 19, compared as a multiset. - 18 of 19 are also identical line-for-line in order. - photovoltaique differs only in the position of three byte-identical rows among themselves. Its query is ORDER BY label and those rows share an empty label, so their relative order was never defined; they are indistinguishable in the output. The on-diagram nomenclature orders by every displayed column, so a tie there means the rows are identical on screen too. Effect on the wiring list, same project and same reload path: element_info rows 0 -> 2, and the two component columns go from blank to K2 -> K1. Cost: the database phase of loading examples/industrial.qet (150 folios, 1794 terminals) moves from 0.210 s to 0.233 s. --- sources/dataBase/projectdatabase.cpp | 36 +++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index 942691af7..6e2d8bc22 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -620,7 +620,13 @@ void projectDataBase::createElementNomenclatureView() "di.folio AS folio," "e.pos AS position " " FROM element_info ei, diagram_info di, element e, diagram d" - " WHERE ei.element_uuid = e.uuid AND e.diagram_uuid = d.uuid AND di.diagram_uuid = d.uuid AND (ei.exclude_from_bom IS NOT 'true')"); + " WHERE ei.element_uuid = e.uuid AND e.diagram_uuid = d.uuid AND di.diagram_uuid = d.uuid AND (ei.exclude_from_bom IS NOT 'true')" + //The element table holds every element of the project; which + //kinds belong in a nomenclature is this view's business, not + //the table's. Kept identical to the mask populateElementTable() + //used to apply, so what this view returns does not change -- + //a slave element (a relay contact) is still not a line item. + " AND e.type IN ('simple', 'terminal', 'master', 'thumbnail')"); QSqlQuery query(m_data_base); if (!query.exec(create_view)) { @@ -732,6 +738,30 @@ void projectDataBase::populateDiagramTable() } } +/** + @brief allElementTypes + Every ElementData::Type, i.e. no filtering at all. + + The element table used to be populated with only + Simple|Terminal|Master|Thumbnail, which quietly made it "the elements a + nomenclature cares about" rather than "the elements of the project". + Anything else reading the table -- the wiring list, and terminal plans + later -- then could not see slave elements (relay contacts) or report + elements, which are ordinary conductor endpoints. The filter now lives in + element_nomenclature_view, where it belongs; see createElementNomenclatureView(). +*/ +static ElementData::Types allElementTypes() +{ + return ElementData::Simple + | ElementData::NextReport + | ElementData::PreviousReport + | ElementData::Master + | ElementData::Slave + | ElementData::Terminal + | ElementData::Thumbnail + | ElementData::ConductorDefinition; +} + /** @brief projectDataBase::populateElementTable Populate the element table @@ -744,7 +774,7 @@ void projectDataBase::populateElementTable() for (auto diagram : m_project->diagrams()) { const ElementProvider ep(diagram); - const auto elmt_vector = ep.find(ElementData::Simple | ElementData::Terminal | ElementData::Master | ElementData::Thumbnail); + const auto elmt_vector = ep.find(allElementTypes()); //Insert all values into the database for (const auto &elmt : elmt_vector) { @@ -773,7 +803,7 @@ void projectDataBase::populateElementInfoTable() for (const auto &diagram : m_project->diagrams()) { const ElementProvider ep(diagram); - const auto elmt_vector = ep.find(ElementData::Simple | ElementData::Terminal | ElementData::Master | ElementData::Thumbnail); + const auto elmt_vector = ep.find(allElementTypes()); //Insert all values into the database for (const auto &elmt : elmt_vector) From 030e6ebf0039c47113d498b15c55dd2a89ced38c Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Sun, 2 Aug 2026 16:10:48 +1200 Subject: [PATCH 17/95] Insert an element the same way whether it is added live or on load The element and element_info tables had two independent insert paths -- addElement() for an element added to a live diagram, and populateElementTable()/populateElementInfoTable() for a full rebuild -- which bound the same row differently. The incremental path wrote kindInformations()["type"] into element.sub_type; the bulk path wrote elementData().masterTypeToString(). So the table held different values depending on whether the project had been reloaded since the element was placed, and element_nomenclature_view exposes that column as element_sub_type, which ElementQueryWidget filters on for the Coil, Protection, Commutator and PLC nomenclature options. That divergence is the same shape as the type-filter one fixed in the previous commit, and it is the reason this stack kept finding bugs that were invisible while editing and only appeared after a reload. Rather than correct a second instance of it, both paths now go through bindElementValues() and bindElementInfoValues(), following the bindDiagramInfoValues() helper this class already had. Live and reloaded now agree by construction instead of by coincidence. The bulk path's values are the ones kept, because they are what every already saved project contains: nothing a reload produces changes, and the previous commit's 19-project BOM regression stays valid. It is the live path that moves, onto the values a reload would have given it anyway. Measured, placing one element into a new project and then saving and reopening it: live element table: slave/ x1 reloaded element table: slave/ x1 and for the same element, what the two paths would have stored: bulk (now shared): "" incremental (before this commit): "simple" Re-ran the BOM regression over the same 19 projects after this change: content identical to the pre-change baseline on all 19, and identical line-for-line on 18, the exception being the three byte-identical photovoltaique rows already described in the previous commit. Note for anyone reading masterTypeToString(): the const no-argument overload returns an empty string for anything that is not a Master, so the "coil" fallback in the static overload is only reached for real master elements. Non-master elements get an empty sub_type, not a spurious "coil". --- sources/dataBase/projectdatabase.cpp | 79 ++++++++++++++++++---------- sources/dataBase/projectdatabase.h | 2 + 2 files changed, 52 insertions(+), 29 deletions(-) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index 6e2d8bc22..a63ea6e1a 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -158,24 +158,12 @@ void projectDataBase::addElement(Element *element) return; } - m_insert_elements_query.bindValue(":uuid", element->uuid().toString()); - m_insert_elements_query.bindValue(":diagram_uuid", element->diagram()->uuid().toString()); - m_insert_elements_query.bindValue(":pos", element->diagram()->convertPosition(element->scenePos()).toString()); - m_insert_elements_query.bindValue(":type", element->elementData().typeToString()); - m_insert_elements_query.bindValue(":sub_type", element->kindInformations()["type"].toString()); + bindElementValues(m_insert_elements_query, element, element->diagram()); if (!m_insert_elements_query.exec()) { qDebug() << "projectDataBase::addElement insert element error : " << m_insert_elements_query.lastError(); } - m_insert_element_info_query.bindValue(":uuid", element->uuid().toString()); - auto hash = elementInfoToString(element); - for (auto key : hash.keys()) - { - QString value = hash.value(key); - QString bind = key.prepend(":"); - m_insert_element_info_query.bindValue(bind, value); - } - + bindElementInfoValues(m_insert_element_info_query, element); if (!m_insert_element_info_query.exec()) { qDebug() << "projectDataBase::addElement insert element info error : " << m_insert_element_info_query.lastError(); } else { @@ -778,12 +766,7 @@ void projectDataBase::populateElementTable() //Insert all values into the database for (const auto &elmt : elmt_vector) { - const auto elmt_data = elmt->elementData(); - m_insert_elements_query.bindValue(":uuid", elmt->uuid().toString()); - m_insert_elements_query.bindValue(":diagram_uuid", diagram->uuid().toString()); - m_insert_elements_query.bindValue(":pos", diagram->convertPosition(elmt->scenePos()).toString()); - m_insert_elements_query.bindValue(":type", elmt_data.typeToString()); - m_insert_elements_query.bindValue(":sub_type", elmt_data.masterTypeToString()); + bindElementValues(m_insert_elements_query, elmt, diagram); if (!m_insert_elements_query.exec()) { qDebug() << "projectDataBase::populateElementTable insert error : " << m_insert_elements_query.lastError(); } @@ -808,15 +791,7 @@ void projectDataBase::populateElementInfoTable() //Insert all values into the database for (const auto &elmt : elmt_vector) { - m_insert_element_info_query.bindValue(QStringLiteral(":uuid"), elmt->uuid().toString()); - const auto hash = elementInfoToString(elmt); - for (const auto &key : hash.keys()) - { - QString value = hash.value(key); - QString bind = QStringLiteral(":") + key; - m_insert_element_info_query.bindValue(bind, value); - } - + bindElementInfoValues(m_insert_element_info_query, elmt); if (!m_insert_element_info_query.exec()) { qDebug() << "projectDataBase::populateElementInfoTable insert error : " << m_insert_element_info_query.lastError(); } @@ -1003,6 +978,52 @@ QHash<QString, QString> projectDataBase::elementInfoToString(Element *elmt) return hash; } +/** + @brief projectDataBase::bindElementValues + Bind one element's row for the element table. + + Shared by addElement() (a single element added to a live diagram) and + populateElementTable() (a full rebuild), because those two used to bind + the same row differently: the incremental path wrote + kindInformations()["type"] into sub_type while the bulk path wrote + elementData().masterTypeToString(). The element table therefore held + different values depending on whether the project had been reloaded + since the element was placed. One binder means live and reloaded agree + by construction rather than by coincidence. + + The bulk path's values are the ones kept: they are what every already + saved project contains, so nothing a reload produces changes. + @param query : prepared insert query to bind into + @param element : element to bind + @param diagram : diagram holding @element +*/ +void projectDataBase::bindElementValues(QSqlQuery &query, Element *element, Diagram *diagram) +{ + const auto element_data = element->elementData(); + query.bindValue(QStringLiteral(":uuid"), element->uuid().toString()); + query.bindValue(QStringLiteral(":diagram_uuid"), diagram->uuid().toString()); + query.bindValue(QStringLiteral(":pos"), diagram->convertPosition(element->scenePos()).toString()); + query.bindValue(QStringLiteral(":type"), element_data.typeToString()); + query.bindValue(QStringLiteral(":sub_type"), element_data.masterTypeToString()); +} + +/** + @brief projectDataBase::bindElementInfoValues + Bind one element's row for the element info table. + Shared by addElement() and populateElementInfoTable() for the same + reason as bindElementValues(). + @param query : prepared insert query to bind into + @param element : element to bind +*/ +void projectDataBase::bindElementInfoValues(QSqlQuery &query, Element *element) +{ + query.bindValue(QStringLiteral(":uuid"), element->uuid().toString()); + const auto hash = elementInfoToString(element); + for (const auto &key : hash.keys()) { + query.bindValue(QStringLiteral(":") + key, hash.value(key)); + } +} + void projectDataBase::bindDiagramInfoValues(QSqlQuery &query, Diagram *diagram) { query.bindValue(":uuid", diagram->uuid()); diff --git a/sources/dataBase/projectdatabase.h b/sources/dataBase/projectdatabase.h index 5873d825f..3186994cd 100644 --- a/sources/dataBase/projectdatabase.h +++ b/sources/dataBase/projectdatabase.h @@ -92,6 +92,8 @@ class projectDataBase : public QObject static QHash<QString, QString> elementInfoToString( Element *elmt); void bindDiagramInfoValues(QSqlQuery &query, Diagram *diagram); + static void bindElementValues(QSqlQuery &query, Element *element, Diagram *diagram); + static void bindElementInfoValues(QSqlQuery &query, Element *element); private: QPointer<QETProject> m_project; From e19d60ae55f59d987d2ae028a5d680fecfad3a0a Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Fri, 21 Aug 2026 19:18:42 +1200 Subject: [PATCH 18/95] Report the real wire count, and show current data The summary line exists so that an empty wiring list is distinguishable from one where every conductor was excluded, and it was reporting the wrong number to do it. QSqlQueryModel fetches lazily, so rowCount() straight after setQuery() returns the rows fetched so far -- 256 -- not the size of the query. Measured with Qt's own QSQLITE driver: a 1000-row view reports 256 until the model is drained, then 1000. The test project quoted in slice 2 has 280 conductors, so this was already displaying 256 on our own data, plausibly enough that nobody looked twice. Drain the model before reading the count. Also refresh the database before building the model. The dialog queries the database rather than the diagrams, so anything not yet written through was invisible here; with conductor text now updated on change that gap is smaller, but a project loaded before this dialog was ever opened still relies on the repopulate. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --- sources/ui/wiringlistdialog.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sources/ui/wiringlistdialog.cpp b/sources/ui/wiringlistdialog.cpp index 791c5e5cf..581b7426b 100644 --- a/sources/ui/wiringlistdialog.cpp +++ b/sources/ui/wiringlistdialog.cpp @@ -41,6 +41,12 @@ WiringListDialog::WiringListDialog(QETProject *project, QWidget *parent) : auto *layout = new QVBoxLayout(this); + //The wiring list reads the database rather than the diagrams, and a + //conductor's row is only as fresh as the last thing that touched it. + //Refresh before querying so the dialog cannot show a wire number that + //was edited earlier in the session. + m_project->dataBase()->updateDB(); + auto *model = new QSqlQueryModel(this); model->setQuery(QStringLiteral( "SELECT wire_number, from_element_label, from_terminal," @@ -57,6 +63,14 @@ WiringListDialog::WiringListDialog(QETProject *project, QWidget *parent) : model->setHeaderData(5, Qt::Horizontal, tr("Folio", "column title")); const int excluded = m_project->dataBase()->excludedConductorCount(); + + //QSqlQueryModel fetches lazily, so rowCount() straight after + //setQuery() reports the first batch (256) rather than the query's + //size. Draining it first is what makes the count below true for a + //project with more wires than that. + while (model->canFetchMore()) { + model->fetchMore(); + } const int listed = model->rowCount(); auto *summary = new QLabel(this); From a48124a27ae4e1557933475e626aa54218f140d7 Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Fri, 21 Aug 2026 20:47:07 +1200 Subject: [PATCH 19/95] Stop reporting wires as excluded that the list is now showing excludedConductorCount() counted conductors whose terminals had no uuid, which was the right rule when that was the reason they were dropped. It no longer is: Terminal::stableUuid() derives an identity from the terminal's geometry, so those conductors are in the table. Left unchanged, the dialog would have told the user "671 conductors excluded" on industrial.qet while listing all 671 of them -- a worse failure than the one the count exists to prevent, because it undermines a list that is now correct. The count and the dialog's explanation both now describe the case that actually remains: an endpoint attached to no element at all, which has no identity to key on under any scheme. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --- sources/dataBase/projectdatabase.cpp | 21 +++++++++++++-------- sources/ui/wiringlistdialog.cpp | 12 ++++++------ 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index a63ea6e1a..5c39d3b5a 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -113,14 +113,17 @@ QSqlQuery projectDataBase::newQuery(const QString &query) { /** @brief projectDataBase::excludedConductorCount - @return how many conductors of the project are deliberately absent from - the conductor table because at least one of their terminals has no uuid. + @return how many conductors of the project are absent from the conductor + table because an endpoint has no parent element to key on. Counted from the live scene rather than from the database, precisely - because the database is where these conductors are *not*. See - addConductor() for why they are omitted: a terminal uuid comes from the - catalog .elmt definition, so an element whose definition predates that - field yields terminals with no stable identity to key on. + because the database is where these conductors are *not*. + + This used to count conductors whose terminals had no uuid, which was most + of them on most projects. Terminal::stableUuid() now derives an identity + from the terminal's geometry when the definition provides no uuid, so that + is no longer a reason to exclude anything, and this counts only the case + that remains genuinely unkeyable. This is what lets a caller tell the user "N wires are missing and here is why", instead of silently presenting a short list as if it were @@ -138,8 +141,10 @@ int projectDataBase::excludedConductorCount() const const auto conductor_list = diagram->conductors(); for (auto *conductor : conductor_list) { - if (conductor->terminal1->uuid().isNull() - || conductor->terminal2->uuid().isNull()) { + //Must match addConductor()'s guard exactly, or this reports + //wires as missing that the list is in fact showing. + if (!conductor->terminal1->parentElement() + || !conductor->terminal2->parentElement()) { ++count; } } diff --git a/sources/ui/wiringlistdialog.cpp b/sources/ui/wiringlistdialog.cpp index 581b7426b..cf80a6025 100644 --- a/sources/ui/wiringlistdialog.cpp +++ b/sources/ui/wiringlistdialog.cpp @@ -77,14 +77,14 @@ WiringListDialog::WiringListDialog(QETProject *project, QWidget *parent) : summary->setWordWrap(true); if (excluded > 0) { - //The count matters more than it looks: a project whose elements - //all predate terminal uuids yields an entirely empty list, and - //without this line that is indistinguishable from a project with - //no wires in it. + //Rare now that Terminal::stableUuid() gives every terminal an + //identity: what is left is a conductor whose endpoint has no + //parent element at all. Still worth saying out loud rather than + //presenting a short list as if it were complete. summary->setText(tr("%n conducteur(s) listé(s).", "wiring list summary", listed) % QStringLiteral(" ") - % tr("%n conducteur(s) exclu(s) : leurs éléments ne définissent pas" - " d'identifiant de borne (définition d'élément trop ancienne).", + % tr("%n conducteur(s) exclu(s) : une extrémité n'est rattachée" + " à aucun élément.", "wiring list exclusion warning", excluded)); } else { From 6208c7e5df9b8b190eac048c04618f0594c06314 Mon Sep 17 00:00:00 2001 From: Kellermorph <thomas.heynk@web.de> Date: Sat, 22 Aug 2026 12:03:35 +0200 Subject: [PATCH 20/95] Add configurable distance between label and slave XRef --- sources/properties/xrefproperties.cpp | 7 ++ sources/properties/xrefproperties.h | 4 ++ .../dynamicelementtextitem.cpp | 22 +++---- .../qetgraphicsitem/dynamicelementtextitem.h | 2 +- .../qetgraphicsitem/elementtextitemgroup.cpp | 6 +- .../qetgraphicsitem/elementtextitemgroup.h | 2 +- sources/ui/xrefpropertieswidget.cpp | 4 ++ sources/ui/xrefpropertieswidget.ui | 64 +++++++++++++++---- 8 files changed, 81 insertions(+), 30 deletions(-) diff --git a/sources/properties/xrefproperties.cpp b/sources/properties/xrefproperties.cpp index bbb4e8b57..c14c7c643 100644 --- a/sources/properties/xrefproperties.cpp +++ b/sources/properties/xrefproperties.cpp @@ -36,6 +36,7 @@ XRefProperties::XRefProperties() m_master_label = "%f-%l%c"; m_slave_label = "(%f-%l%c)"; m_offset = 0; + m_slave_offset = 0; m_xref_pos = Qt::AlignBottom; } @@ -56,6 +57,8 @@ void XRefProperties::toSettings(QSettings &settings, settings.setValue(prefix % "snapto", snap); int offset = m_offset; settings.setValue(prefix % "offset", offset); + int slave_offset = m_slave_offset; + settings.setValue(prefix % "slave_offset", slave_offset); QString master_label = m_master_label; settings.setValue(prefix % "master_label", master_label); QString slave_label = m_slave_label; @@ -86,6 +89,7 @@ void XRefProperties::fromSettings(const QSettings &settings, QString snap = settings.value(prefix % "snapto", "label").toString(); snap == "bottom"? m_snap_to = Bottom : m_snap_to = Label; m_offset = settings.value(prefix % "offset", "0").toInt(); + m_slave_offset = settings.value(prefix % "slave_offset", "0").toInt(); m_master_label = settings.value(prefix % "master_label", "%f-%l%c").toString(); m_slave_label = settings.value(prefix % "slave_label", "(%f-%l%c)").toString(); @@ -123,6 +127,7 @@ QDomElement XRefProperties::toXml(QDomDocument &xml_document) const int offset = m_offset; xml_element.setAttribute("offset", QString::number(offset)); + xml_element.setAttribute("slave_offset", QString::number(m_slave_offset)); QString master_label = m_master_label; xml_element.setAttribute("master_label", master_label); QString slave_label = m_slave_label; @@ -157,6 +162,7 @@ bool XRefProperties::fromXml(const QDomElement &xml_element) { m_xref_pos = Qt::AlignBottom; m_offset = xml_element.attribute("offset", "0").toInt(); + m_slave_offset = xml_element.attribute("slave_offset", "0").toInt(); m_master_label = xml_element.attribute("master_label", "%f-%l%c"); m_slave_label = xml_element.attribute("slave_label","(%f-%l%c)"); foreach (QString key, m_prefix_keys) { @@ -199,6 +205,7 @@ bool XRefProperties::operator ==(const XRefProperties &xrp) const{ && m_prefix == xrp.m_prefix && m_master_label== xrp.m_master_label && m_offset == xrp.m_offset + && m_slave_offset== xrp.m_slave_offset && m_xref_pos == xrp.m_xref_pos && m_slave_label == xrp.m_slave_label); } diff --git a/sources/properties/xrefproperties.h b/sources/properties/xrefproperties.h index b4824aa4e..572481f65 100644 --- a/sources/properties/xrefproperties.h +++ b/sources/properties/xrefproperties.h @@ -80,6 +80,9 @@ class XRefProperties : public PropertiesInterface void setOffset(const int offset) {m_offset = offset;} int offset() const {return m_offset;} + void setSlaveOffset(const int offset) {m_slave_offset = offset;} + int slaveOffset() const {return m_slave_offset;} + void setKey(QString& key) {m_key = key;} private: @@ -93,6 +96,7 @@ class XRefProperties : public PropertiesInterface QString m_master_label; QString m_slave_label; int m_offset; + int m_slave_offset; QString m_key; }; diff --git a/sources/qetgraphicsitem/dynamicelementtextitem.cpp b/sources/qetgraphicsitem/dynamicelementtextitem.cpp index a9af725ae..dad8f3775 100644 --- a/sources/qetgraphicsitem/dynamicelementtextitem.cpp +++ b/sources/qetgraphicsitem/dynamicelementtextitem.cpp @@ -1387,7 +1387,7 @@ void DynamicElementTextItem::updateXref() } else m_slave_Xref_item->setPlainText(xref_label); - setXref_item(xrp.getXrefPos()); + setXref_item(xrp.getXrefPos(), xrp.slaveOffset()); return; } } @@ -1453,7 +1453,7 @@ void DynamicElementTextItem::setPlainText(const QString &text) ? nullptr : m_parent_element.data()->linkedElements().first(); if (master_elmt) { XRefProperties xrp = diagram()->project()->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); - setXref_item(xrp.getXrefPos()); + setXref_item(xrp.getXrefPos(), xrp.slaveOffset()); } } } @@ -1465,44 +1465,44 @@ void DynamicElementTextItem::setTextWidth(qreal width) emit textWidthChanged(width); } -void DynamicElementTextItem::setXref_item(Qt::AlignmentFlag m_exHrefPos) +void DynamicElementTextItem::setXref_item(Qt::AlignmentFlag m_exHrefPos, int slave_offset) { QRectF r = boundingRect(); QPointF pos; //QPointF pos(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.top()); if (m_exHrefPos == Qt::AlignBottom) { - pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.bottom()); + pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.bottom() + slave_offset); } else if (m_exHrefPos == Qt::AlignTop) { - pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.top() - m_slave_Xref_item->boundingRect().height()); + pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.top() - m_slave_Xref_item->boundingRect().height() - slave_offset); } else if (m_exHrefPos == Qt::AlignLeft) // { - pos = QPointF(r.left() - m_slave_Xref_item->boundingRect().width(),r.center().y() - m_slave_Xref_item->boundingRect().height()/2); + pos = QPointF(r.left() - m_slave_Xref_item->boundingRect().width() - slave_offset,r.center().y() - m_slave_Xref_item->boundingRect().height()/2); } else if (m_exHrefPos == Qt::AlignRight) // { - pos = QPointF(r.right() ,r.center().y() - m_slave_Xref_item->boundingRect().height()/2); + pos = QPointF(r.right() + slave_offset ,r.center().y() - m_slave_Xref_item->boundingRect().height()/2); } else if (m_exHrefPos == Qt::AlignBaseline) // { if(this->alignment() &Qt::AlignBottom) { - pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.bottom()); + pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.bottom() + slave_offset); } else if(this->alignment() &Qt::AlignTop) { - pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.top() - m_slave_Xref_item->boundingRect().height()); + pos = QPointF(r.center().x() - m_slave_Xref_item->boundingRect().width()/2,r.top() - m_slave_Xref_item->boundingRect().height() - slave_offset); } else if(this->alignment() &Qt::AlignLeft) { - pos = QPointF(r.left() - m_slave_Xref_item->boundingRect().width(),r.center().y() - m_slave_Xref_item->boundingRect().height()/2); + pos = QPointF(r.left() - m_slave_Xref_item->boundingRect().width() - slave_offset,r.center().y() - m_slave_Xref_item->boundingRect().height()/2); } else if(this->alignment() &Qt::AlignRight) { - pos = QPointF(r.right() ,r.center().y() - m_slave_Xref_item->boundingRect().height()/2); + pos = QPointF(r.right() + slave_offset ,r.center().y() - m_slave_Xref_item->boundingRect().height()/2); } } m_slave_Xref_item->setPos(pos); diff --git a/sources/qetgraphicsitem/dynamicelementtextitem.h b/sources/qetgraphicsitem/dynamicelementtextitem.h index 935a98006..f958269c0 100644 --- a/sources/qetgraphicsitem/dynamicelementtextitem.h +++ b/sources/qetgraphicsitem/dynamicelementtextitem.h @@ -112,7 +112,7 @@ class DynamicElementTextItem : public DiagramTextItem void updateXref(); void setPlainText(const QString &text); void setTextWidth(qreal width); - void setXref_item(Qt::AlignmentFlag m_exHrefPos); + void setXref_item(Qt::AlignmentFlag m_exHrefPos, int slave_offset = 0); void setKeepVisualRotation(bool set); bool keepVisualRotation() const; diff --git a/sources/qetgraphicsitem/elementtextitemgroup.cpp b/sources/qetgraphicsitem/elementtextitemgroup.cpp index eb4cb72e9..d2ff6bd45 100644 --- a/sources/qetgraphicsitem/elementtextitemgroup.cpp +++ b/sources/qetgraphicsitem/elementtextitemgroup.cpp @@ -810,7 +810,7 @@ void ElementTextItemGroup::updateXref() else m_slave_Xref_item->setPlainText(xref_label); - adjustSlaveXrefPos(); + adjustSlaveXrefPos(xrp.slaveOffset()); return; } } @@ -833,11 +833,11 @@ void ElementTextItemGroup::updateXref() } } -void ElementTextItemGroup::adjustSlaveXrefPos() +void ElementTextItemGroup::adjustSlaveXrefPos(int slave_offset) { QRectF r = boundingRect(); QPointF pos(r.center().x() - m_slave_Xref_item->boundingRect().width()/2, - r.bottom()); + r.bottom() + slave_offset); m_slave_Xref_item->setPos(pos); } diff --git a/sources/qetgraphicsitem/elementtextitemgroup.h b/sources/qetgraphicsitem/elementtextitemgroup.h index 842ba50dd..da1d87e66 100644 --- a/sources/qetgraphicsitem/elementtextitemgroup.h +++ b/sources/qetgraphicsitem/elementtextitemgroup.h @@ -104,7 +104,7 @@ class ElementTextItemGroup : public QObject, public QGraphicsItemGroup private: void updateXref(); - void adjustSlaveXrefPos(); + void adjustSlaveXrefPos(int slave_offset = 0); void autoPos(); private: diff --git a/sources/ui/xrefpropertieswidget.cpp b/sources/ui/xrefpropertieswidget.cpp index 54bebd143..02dedc746 100644 --- a/sources/ui/xrefpropertieswidget.cpp +++ b/sources/ui/xrefpropertieswidget.cpp @@ -147,6 +147,7 @@ void XRefPropertiesWidget::saveProperties(int index) { xrp.setMasterLabel(ui->m_master_le->text()); xrp.setSlaveLabel(ui->m_slave_le->text()); xrp.setOffset(ui->m_offset_sb->value()); + xrp.setSlaveOffset(ui->m_slave_offset_sb->value()); m_properties.insert(type, xrp); } @@ -177,6 +178,9 @@ void XRefPropertiesWidget::updateDisplay() int offset = xrp.offset(); ui->m_offset_sb->setValue(offset); + int slave_offset = xrp.slaveOffset(); + ui->m_slave_offset_sb->setValue(slave_offset); + if (xrp.snapTo() == XRefProperties::Bottom){ ui->m_snap_to_cb->setCurrentIndex(ui->m_snap_to_cb->findData("bottom")); ui->m_offset_sb->setEnabled(true); diff --git a/sources/ui/xrefpropertieswidget.ui b/sources/ui/xrefpropertieswidget.ui index cc62f7c22..a6bf89d39 100644 --- a/sources/ui/xrefpropertieswidget.ui +++ b/sources/ui/xrefpropertieswidget.ui @@ -90,20 +90,56 @@ </item> </layout> </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_6"> - <item> - <widget class="QLabel" name="label_10"> - <property name="text"> - <string>XRef slave position</string> - </property> - </widget> - </item> - <item> - <widget class="QComboBox" name="m_xrefpos_cb"/> - </item> - </layout> - </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_6"> + <item> + <widget class="QLabel" name="label_10"> + <property name="text"> + <string>XRef slave position</string> + </property> + </widget> + </item> + <item> + <widget class="QComboBox" name="m_xrefpos_cb"/> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_8"> + <item> + <widget class="QLabel" name="label_11"> + <property name="text"> + <string>Distance label - slave :</string> + </property> + </widget> + </item> + <item> + <widget class="QSpinBox" name="m_slave_offset_sb"> + <property name="toolTip"> + <string>Distance in pixels between the label and the slave cross reference</string> + </property> + <property name="suffix"> + <string notr="true">px</string> + </property> + <property name="correctionMode"> + <enum>QAbstractSpinBox::CorrectToNearestValue</enum> + </property> + <property name="minimum"> + <number>-50</number> + </property> + <property name="maximum"> + <number>100</number> + </property> + <property name="singleStep"> + <number>1</number> + </property> + <property name="value"> + <number>0</number> + </property> + </widget> + </item> + </layout> + </item> <item> <layout class="QHBoxLayout" name="horizontalLayout_3"> <item> From 4c038a868b453df53e8e3505e6f7440b77904c31 Mon Sep 17 00:00:00 2001 From: Kellermorph <thomas.heynk@web.de> Date: Sun, 23 Aug 2026 12:51:51 +0200 Subject: [PATCH 21/95] fix --- sources/qetgraphicsitem/elementtextitemgroup.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sources/qetgraphicsitem/elementtextitemgroup.cpp b/sources/qetgraphicsitem/elementtextitemgroup.cpp index d2ff6bd45..983b5605b 100644 --- a/sources/qetgraphicsitem/elementtextitemgroup.cpp +++ b/sources/qetgraphicsitem/elementtextitemgroup.cpp @@ -263,7 +263,16 @@ void ElementTextItemGroup::updateAlignment() if(m_Xref_item) m_Xref_item->autoPos(); if(m_slave_Xref_item) - adjustSlaveXrefPos(); + { + int slave_offset = 0; + Element *master_elmt = m_parent_element->linkedElements().isEmpty() + ? nullptr : m_parent_element->linkedElements().first(); + if (master_elmt && m_parent_element->diagram()) { + XRefProperties xrp = m_parent_element->diagram()->project()->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); + slave_offset = xrp.slaveOffset(); + } + adjustSlaveXrefPos(slave_offset); + } if(m_hold_to_bottom_of_page) autoPos(); } From ae6b992ae43c85bc48d435f3566071f1f68f63d2 Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Mon, 24 Aug 2026 20:10:32 +1200 Subject: [PATCH 22/95] Give QPropertyUndoCommand::undo() its own first-time grace period redo() has a direct-write path guarded by m_first_time: on the very first call it writes the property immediately, and only animates on calls after that (per setAnimated()'s documented contract). undo() had no equivalent -- it always animated, so undo() both returned before the property was restored (stale state visible to anything sharing the call stack) and, with no running event loop, never restored it at all. The obvious fix -- reuse m_first_time in undo()'s guard too -- turns out not to work, and I verified this with a standalone build before picking an approach: QUndoStack::push() always calls redo() once before any undo() can run, and redo()'s direct-write branch sets m_first_time = true as it completes. So by the time undo() is ever called, m_first_time has already flipped, and reusing it would make undo() take the animate branch on every call, unconditionally -- syntactically symmetric with redo(), but behaviourally unchanged for the exact scenario reported. Instead, undo() gets its own m_undo_first_time flag, seeded from the same first_time argument setAnimated() already takes, and set true by undo()'s own direct-write branch the same way m_first_time is set by redo()'s. That gives undo() a real, reachable direct-write path on its own first call, independent of how many times redo() has already run. Verified against a standalone build of just this class (as the issue's own repro does): first redo and first undo are both now synchronous with no event loop running; with an event loop present, both settle to the correct value once "broken in"; behaviour for every other caller of QPropertyUndoCommand -- everywhere that calls plain enableAnimation() or the bare setAnimated() (first_time defaulting true) -- is provably unchanged, since m_undo_first_time starts true either way and the animate branch never modifies it. Fixes #755. --- .../QPropertyUndoCommand/qpropertyundocommand.cpp | 15 ++++++++++++++- .../QPropertyUndoCommand/qpropertyundocommand.h | 3 ++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/sources/QPropertyUndoCommand/qpropertyundocommand.cpp b/sources/QPropertyUndoCommand/qpropertyundocommand.cpp index 90f333b9c..e7bf7ab7e 100644 --- a/sources/QPropertyUndoCommand/qpropertyundocommand.cpp +++ b/sources/QPropertyUndoCommand/qpropertyundocommand.cpp @@ -72,6 +72,7 @@ QPropertyUndoCommand::QPropertyUndoCommand(const QPropertyUndoCommand *other) m_new_value = other->m_new_value; m_animate = other->m_animate; m_first_time = other->m_first_time; + m_undo_first_time = other->m_undo_first_time; setText(other->text()); } @@ -99,11 +100,20 @@ void QPropertyUndoCommand::enableAnimation (bool animate) { @param first_time = if true, the first animation is done at the first call of redo if false, the first animation is done at the second call of redo. + The same rule applies to undo, tracked independently: redo() always + runs before the first undo() (QUndoStack::push() calls redo() + immediately), so by the time undo() can run at all, redo()'s own + m_first_time has already flipped true. Sharing that flag would leave + undo() with no instant path ever reachable in practice -- reusing it + is not actually symmetric, it just looks like it is. m_undo_first_time + gives undo() the same one-time grace period redo() has, on its own + first call instead of redo's. */ void QPropertyUndoCommand::setAnimated(bool animate, bool first_time) { m_animate = animate; m_first_time = first_time; + m_undo_first_time = first_time; } /** @@ -155,7 +165,7 @@ void QPropertyUndoCommand::undo() { if (m_object->property(m_property_name) != m_old_value) { - if (m_animate) + if (m_animate && m_undo_first_time) { QPropertyAnimation *animation = new QPropertyAnimation(m_object, m_property_name); animation->setStartValue(m_new_value); @@ -163,7 +173,10 @@ void QPropertyUndoCommand::undo() animation->start(QAbstractAnimation::DeleteWhenStopped); } else + { m_object->setProperty(m_property_name, m_old_value); + m_undo_first_time = true; + } } QUndoCommand::undo(); diff --git a/sources/QPropertyUndoCommand/qpropertyundocommand.h b/sources/QPropertyUndoCommand/qpropertyundocommand.h index 1d44e7428..7da2b4a86 100644 --- a/sources/QPropertyUndoCommand/qpropertyundocommand.h +++ b/sources/QPropertyUndoCommand/qpropertyundocommand.h @@ -58,7 +58,8 @@ class QPropertyUndoCommand : public QUndoCommand const char *m_property_name; QVariant m_old_value, m_new_value; bool m_animate = false, - m_first_time = true; + m_first_time = true, + m_undo_first_time = true; }; #endif // QPROPERTYUNDOCOMMAND_H From 0d08a4e2650e7298e193cd83762c3acbb52efe2f Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Mon, 24 Aug 2026 20:41:01 +1200 Subject: [PATCH 23/95] Make Diagram::toXml() serialize elements and conductors deterministically Saving an unmodified project produced a different byte stream on every run: QGraphicsScene::items() returns items in stacking order, and ties between same-Z items follow the scene's internal index -- not any content-derived order -- so it isn't reproducible across process runs. The legacy terminal-id table inherits the same instability, since ids are assigned sequentially in element order. Sort list_elements and list_conductors into a deterministic order before serializing, using a key built from data that's actually stable across loads (position), not Element::uuid()/Conductor::uuid(): for an item with no persisted uuid attribute, fromXml() invents a fresh random one on every load, so sorting by uuid would still be non-deterministic across process runs for any legacy file -- which this corpus has plenty of. Also fixes a second, related source of byte-level non-determinism found while verifying the above: Conductor::toXml() unconditionally wrote m_uuid back out, including the synthetic value fromXml() just invented for a conductor with no uuid attribute in the file. Every conductor in every example project checked has no persisted uuid at all, so this alone meant no project with conductors could ever resave identically, regardless of ordering. Conductor gets a m_persist_uuid flag, false only when the uuid it's holding was synthesized rather than loaded, so toXml() stops writing a value that was never meant to be permanent. Deliberately NOT applying the same uuid-persistence fix to Element: element uuids are cross-referenced by other elements' <links_uuids> blocks for master/slave/report linking (element.cpp, tmp_uuids_link, matched by elmt->uuid() == stored uuid on load). Making an element's own uuid non-persistent would silently break that match for any linked element without one already -- a real regression, not a theoretical one. Left as a smaller, separate residual: 1-6 elements per project across the corpus (a few tenths of a percent) still get a fresh uuid on each load, same class of bug, needs the link-aware version of this fix instead of this one. Verified against 8 example projects (the ones with conductors, plus the two zero-conductor control cases from FINDINGS.md F002), 5 resaves each in isolated HOME/XDG environments: - Element and conductor ORDER: 0 churning sections across the whole corpus (previously the majority of diagrams in industrial.qet, m_000.qet and tremie_vibrante.qet churned on every run). - Conductor uuid VALUES: 0 churn (previously every conductor in every project, since none have a persisted uuid). - 6 of 8 projects are now byte-for-byte identical (md5) across all 5 runs. The remaining 2 (industrial.qet, m_000.qet) differ only in the handful of element uuids covered by the known Element residual above -- confirmed by checking those uuids specifically, not inferred. - Element/conductor counts before and after resave match exactly on every project (no data loss from the sort). Fixes #754. --- sources/diagram.cpp | 64 +++++++++++++++++++++++++++ sources/qetgraphicsitem/conductor.cpp | 9 +++- sources/qetgraphicsitem/conductor.h | 6 ++- 3 files changed, 76 insertions(+), 3 deletions(-) diff --git a/sources/diagram.cpp b/sources/diagram.cpp index cf552d14a..271e0713f 100644 --- a/sources/diagram.cpp +++ b/sources/diagram.cpp @@ -40,9 +40,59 @@ #include "undocommand/addelementtextcommand.h" #include "qetinformation.h" #include "qetproject.h" +#include <algorithm> #include <cassert> #include <math.h> +namespace { + /// Format a position as a string that sorts the same way the numbers do + /// (fixed precision, so "-" and decimals compare correctly as text). + QString positionKey(const QPointF &pos) + { + return QStringLiteral("%1|%2") + .arg(pos.x(), 0, 'f', 4) + .arg(pos.y(), 0, 'f', 4); + } + + /// Sort key for Diagram::toXml()'s <elements> block: the element's own + /// diagram-local position, exactly what it's already saved as (x/y), + /// never invented or regenerated. uuid() is deliberately NOT used here: + /// for an element with no persisted uuid attribute, fromXml() invents a + /// fresh random one on every load, so sorting by uuid would still be + /// non-deterministic across process runs for any legacy file. + QString elementSortKey(Element *elmt) + { + return positionKey(elmt->pos()); + } + + /// Sort key for a terminal: its parent element's position, then the + /// terminal's own position local to that element (from the .elmt + /// definition, fixed regardless of where the element is placed). + QString terminalSortKey(Terminal *terminal) + { + if (!terminal) + return QString(); + Element *parent = terminal->parentElement(); + return (parent ? positionKey(parent->pos()) : QStringLiteral("?")) + + QLatin1Char(':') + positionKey(terminal->pos()); + } + + /// Sort key for Diagram::toXml()'s <conductors> block. Built from both + /// endpoints' terminalSortKey(), not Conductor::uuid(): in every example + /// project checked, conductors have no persisted uuid attribute at all, + /// so uuid() is a freshly-minted random value on every load -- exactly + /// as unusable for cross-run determinism as the element case above, just + /// with no persisted fallback to reach for instead. Canonicalised + /// (smaller key first) since a conductor's two ends are unordered for + /// this purpose. + QString conductorSortKey(Conductor *cond) + { + QString a = terminalSortKey(cond->terminal1); + QString b = terminalSortKey(cond->terminal2); + return (a <= b) ? (a + QLatin1Char('>') + b) : (b + QLatin1Char('>') + a); + } +} + int Diagram::xGrid = 10; int Diagram::yGrid = 10; int Diagram::xKeyGrid = 10; @@ -1014,6 +1064,20 @@ QDomDocument Diagram::toXml(bool whole_content, bool is_copy_command) { } } + // items() returns items in stacking order, which is not guaranteed + // reproducible across processes (ties between same-Z items follow + // the scene's internal index, not any content-derived order) -- so + // without this, saving an unmodified project produces a different + // byte stream on every run. Elements and conductors are the two + // blocks observed to actually churn across the example corpus; + // sort them into a deterministic, content-derived order before + // serializing. This also fixes the legacy terminal-id churn below, + // since those ids are assigned sequentially in element order. + std::stable_sort(list_elements.begin(), list_elements.end(), + [](Element *a, Element *b) { return elementSortKey(a) < elementSortKey(b); }); + std::stable_sort(list_conductors.begin(), list_conductors.end(), + [](Conductor *a, Conductor *b) { return conductorSortKey(a) < conductorSortKey(b); }); + // correspondence table between the addresses of the terminals and their ids // table de correspondance entre les adresses des bornes et leurs ids QHash<Terminal *, int> table_adr_id; diff --git a/sources/qetgraphicsitem/conductor.cpp b/sources/qetgraphicsitem/conductor.cpp index 4f538e91f..5711b5d1f 100644 --- a/sources/qetgraphicsitem/conductor.cpp +++ b/sources/qetgraphicsitem/conductor.cpp @@ -1011,10 +1011,14 @@ bool Conductor::fromXml(QDomElement &dom_element) //that field was introduced (see terminal1/terminal2 handling in //toXml() below). m_uuid = QUuid(dom_element.attribute(QStringLiteral("uuid"))); + m_persist_uuid = !m_uuid.isNull(); if (m_uuid.isNull()) { //Absent, empty or malformed: mint one. A null uuid is not a usable //identity -- every conductor carrying one would collide with every - //other on the conductor table's primary key. + //other on the conductor table's primary key. It's runtime-only, + //though: toXml() must not write it back out, or a legacy file + //with no conductor uuids gets a freshly different one on every + //single load-and-resave (see #754). m_uuid = QUuid::createUuid(); } @@ -1056,7 +1060,8 @@ QDomElement Conductor::toXml(QDomDocument &dom_document, { QDomElement dom_element = dom_document.createElement("conductor"); - dom_element.setAttribute("uuid", m_uuid.toString()); + if (m_persist_uuid) + dom_element.setAttribute("uuid", m_uuid.toString()); dom_element.setAttribute("x", QString::number(pos().x())); dom_element.setAttribute("y", QString::number(pos().y())); diff --git a/sources/qetgraphicsitem/conductor.h b/sources/qetgraphicsitem/conductor.h index 91ca92afb..63857e068 100644 --- a/sources/qetgraphicsitem/conductor.h +++ b/sources/qetgraphicsitem/conductor.h @@ -79,7 +79,7 @@ class Conductor : public QGraphicsObject Diagram *diagram() const; ConductorTextItem *textItem() const; QUuid uuid() const {return m_uuid;} - void newUuid() {m_uuid = QUuid::createUuid();} //create new uuid for this conductor + void newUuid() {m_uuid = QUuid::createUuid(); m_persist_uuid = true;} //create new uuid for this conductor void updatePath(const QRectF & = QRectF()); //This method do nothing, it's only made to be used with Q_PROPERTY @@ -209,6 +209,10 @@ class Conductor : public QGraphicsObject bool m_valid; bool m_freeze_label = false; QUuid m_uuid; + /// false when m_uuid was synthesized by fromXml() because the + /// file had none -- toXml() must not persist that value, or + /// every reload mints and saves a new random one (see #754). + bool m_persist_uuid = true; /// QPen et QBrush objects used to draw conductors static QPen conductor_pen; From e3cb994e0e633421e195ccf19669bd0a2e9567bc Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Mon, 24 Aug 2026 22:51:39 +1200 Subject: [PATCH 24/95] Cascade-delete a diagram's element/element_info/terminal/conductor rows removeDiagram() only ever deleted the diagram's own row. No foreign key in this schema is declared ON DELETE CASCADE (and SQLite foreign-key enforcement is never turned on for this connection anyway), so removing a diagram left every element, element_info, terminal and conductor row that belonged to it behind in the database -- silently, since nothing reads them until the next full updateDB() rebuild papers over it. Traced why this had never crashed anything: Diagram::~Diagram() explicitly walks and deletes its top-level items through removeItem() (which does call dataBase()->removeElement() correctly), but deliberately skips conductors -- because a conductor's destructor touches both of its terminals (terminal1->removeConductor(this)), and those terminals may belong to an element already destroyed earlier in the same sweep. Conductors are instead destroyed as a side effect of Terminal::~Terminal()'s qDeleteAll() on its own conductor list, which is a plain C++ delete that never goes through Diagram::removeItem() and therefore never calls dataBase()->removeConductor() at all. So the object graph is torn down safely, but the database is never told about the conductors or their terminals. Fixed by adding the missing bulk deletes to projectDataBase::removeDiagram() itself, run while the diagram (and its live scene) still exist -- verified that QETProject::detachDiagram() emits diagramRemoved() (which this class's constructor connects to this slot) synchronously, before the Diagram object is scheduled for destruction via deleteLater(), so nothing here races the C++ teardown described above. Order matters: element_info and terminal have no diagram_uuid column of their own, so both are scoped through a subquery on element and must run before element itself is deleted. Verified against examples/industrial.qet (50 diagrams) by calling projectDataBase::removeDiagram() directly and comparing table counts before and after, with no intervening updateDB() call to mask a gap: element=354->335 element_info=354->335 terminal=1087->1033 conductor=671->626 diagram=50->49 Every delta matches a direct SQL count for that diagram's own rows exactly (19 elements, 54 terminals), and both "orphan rows still referencing the removed diagram" checks read 0 afterward -- so the cascade is complete and, just as importantly, scoped: nothing belonging to the other 49 diagrams moved. Separate finding, not fixed here: QETProject::removeDiagram(Diagram*) (the synchronous, non-undoable variant, not the usual GUI ProjectView::removeDiagram() path) segfaults if the enclosing QETProject is destroyed before an event loop iteration lets its pending deleteLater() run -- reproduces identically on unmodified master, so it predates and is unrelated to this change. Worth its own report; a headless caller is the only realistic way to hit it, which is how this surfaced. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --- sources/dataBase/projectdatabase.cpp | 57 +++++++++++++++++++++++++++- sources/dataBase/projectdatabase.h | 6 ++- 2 files changed, 60 insertions(+), 3 deletions(-) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index 37bb3d2e6..1f4770230 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -225,7 +225,40 @@ void projectDataBase::addDiagram(Diagram *diagram) void projectDataBase::removeDiagram(Diagram *diagram) { - m_remove_diagram_query.bindValue(":uuid", diagram->uuid().toString()); + const QString uuid_str = diagram->uuid().toString(); + + //Order matters: element_info and terminal are scoped through a + //subquery on element, so they must run before element itself is + //deleted below. Without this, a removed diagram left its rows + //behind in every one of these tables until the next full + //updateDB() rebuild -- invisible day to day, since nothing reads + //them meanwhile, but a real inconsistency between the live scene + //and the database in between. + m_cascade_remove_element_info_query.bindValue(":uuid", uuid_str); + if (!m_cascade_remove_element_info_query.exec()) { + qDebug() << "projectDataBase::removeDiagram element_info cascade error : " + << m_cascade_remove_element_info_query.lastError(); + } + + m_cascade_remove_terminal_query.bindValue(":uuid", uuid_str); + if (!m_cascade_remove_terminal_query.exec()) { + qDebug() << "projectDataBase::removeDiagram terminal cascade error : " + << m_cascade_remove_terminal_query.lastError(); + } + + m_cascade_remove_conductor_query.bindValue(":uuid", uuid_str); + if (!m_cascade_remove_conductor_query.exec()) { + qDebug() << "projectDataBase::removeDiagram conductor cascade error : " + << m_cascade_remove_conductor_query.lastError(); + } + + m_cascade_remove_element_query.bindValue(":uuid", uuid_str); + if (!m_cascade_remove_element_query.exec()) { + qDebug() << "projectDataBase::removeDiagram element cascade error : " + << m_cascade_remove_element_query.lastError(); + } + + m_remove_diagram_query.bindValue(":uuid", uuid_str); if (!m_remove_diagram_query.exec()) { qDebug() << "projectDataBase::removeDiagram delete error : " << m_remove_diagram_query.lastError(); } else { @@ -772,7 +805,27 @@ void projectDataBase::prepareQuery() m_insert_diagram_query = QSqlQuery(m_data_base); m_insert_diagram_query.prepare("INSERT INTO diagram (uuid, pos) VALUES (:uuid, :pos)"); - //REMOVE DIAGRAM + //REMOVE DIAGRAM (cascade first: element_info and terminal have no + //diagram_uuid column of their own, so both are scoped through + //element while the element rows for this diagram still exist). + m_cascade_remove_element_info_query = QSqlQuery(m_data_base); + m_cascade_remove_element_info_query.prepare( + "DELETE FROM element_info WHERE element_uuid IN " + "(SELECT uuid FROM element WHERE diagram_uuid = :uuid)"); + + m_cascade_remove_terminal_query = QSqlQuery(m_data_base); + m_cascade_remove_terminal_query.prepare( + "DELETE FROM terminal WHERE element_uuid IN " + "(SELECT uuid FROM element WHERE diagram_uuid = :uuid)"); + + m_cascade_remove_conductor_query = QSqlQuery(m_data_base); + m_cascade_remove_conductor_query.prepare( + "DELETE FROM conductor WHERE diagram_uuid = :uuid"); + + m_cascade_remove_element_query = QSqlQuery(m_data_base); + m_cascade_remove_element_query.prepare( + "DELETE FROM element WHERE diagram_uuid = :uuid"); + m_remove_diagram_query = QSqlQuery(m_data_base); m_remove_diagram_query.prepare("DELETE FROM diagram WHERE uuid=:uuid"); diff --git a/sources/dataBase/projectdatabase.h b/sources/dataBase/projectdatabase.h index cddf53468..9b5505b4c 100644 --- a/sources/dataBase/projectdatabase.h +++ b/sources/dataBase/projectdatabase.h @@ -106,7 +106,11 @@ class projectDataBase : public QObject m_insert_terminal_query, m_insert_conductor_query, m_update_conductor_query, - m_remove_conductor_query; + m_remove_conductor_query, + m_cascade_remove_element_info_query, + m_cascade_remove_terminal_query, + m_cascade_remove_conductor_query, + m_cascade_remove_element_query; #ifdef QET_EXPORT_PROJECT_DB public: From 10bf0411bb40fd38fbe7c1440a7a41101d93c0e2 Mon Sep 17 00:00:00 2001 From: Levi Jetzer <levi.jetzer@ibsys.ch> Date: Wed, 2 Sep 2026 18:24:47 +0200 Subject: [PATCH 25/95] Add "Potentiel" field to the terminal editor (element editor) New QLineEdit (m_potential_le) between Type and Nom: an optional, symbol-author-chosen grouping identifier shared by terminals that belong to the same physical terminal within a multi-terminal block. Stored as TerminalData::m_potential (new field, persisted as the "potential" XML attribute, empty by default). Used by relatedPotentialTerminal() in terminal.cpp: when potential_isolating is enabled on a Terminal-type element, terminals sharing a non-empty, matching potential value now stay electrically linked to each other instead of every terminal in the block being isolated from every other one. Tooltip on the field for explanation --- sources/editor/graphicspart/partterminal.cpp | 9 ++++++ sources/editor/graphicspart/partterminal.h | 5 ++++ sources/editor/ui/terminaleditor.cpp | 22 ++++++++++++++ sources/editor/ui/terminaleditor.h | 15 +++++----- sources/editor/ui/terminaleditor.ui | 22 +++++++++++--- sources/properties/terminaldata.cpp | 5 ++++ sources/properties/terminaldata.h | 12 ++++++++ sources/qetgraphicsitem/terminal.cpp | 30 ++++++++++++++++++-- sources/qetgraphicsitem/terminal.h | 1 + 9 files changed, 108 insertions(+), 13 deletions(-) diff --git a/sources/editor/graphicspart/partterminal.cpp b/sources/editor/graphicspart/partterminal.cpp index 194ae0aec..1516d804c 100644 --- a/sources/editor/graphicspart/partterminal.cpp +++ b/sources/editor/graphicspart/partterminal.cpp @@ -476,6 +476,15 @@ void PartTerminal::setMasterLabelIndex(int index) emit masterLabelIndexChanged(); } +void PartTerminal::setPotential(const QString &potential) +{ + if (d->m_potential == potential) return; + prepareGeometryChange(); + d->m_potential = potential; + update(); + emit potentialChanged(); +} + /** Updates the position of the second point according to the position and orientation of the terminal. diff --git a/sources/editor/graphicspart/partterminal.h b/sources/editor/graphicspart/partterminal.h index d0ba05da9..c1aec6de4 100644 --- a/sources/editor/graphicspart/partterminal.h +++ b/sources/editor/graphicspart/partterminal.h @@ -44,6 +44,7 @@ class PartTerminal : public CustomElementGraphicPart Q_PROPERTY(QColor label_color READ labelColor WRITE setLabelColor) Q_PROPERTY(bool use_master_label READ useMasterLabel WRITE setUseMasterLabel) Q_PROPERTY(int master_label_index READ masterLabelIndex WRITE setMasterLabelIndex) + Q_PROPERTY(QString potential READ potential WRITE setPotential) public: // constructors, destructor @@ -56,6 +57,7 @@ class PartTerminal : public CustomElementGraphicPart void orientationChanged(); void nameChanged(); void terminalTypeChanged(); + void potentialChanged(); void showNameChanged(); void labelPosChanged(); void labelFontChanged(); @@ -140,6 +142,9 @@ class PartTerminal : public CustomElementGraphicPart int masterLabelIndex() const { return d->m_master_label_index; } void setMasterLabelIndex(int index); + QString potential() const { return d->m_potential; } + void setPotential(const QString &potential); + void setNewUuid(); QRectF labelRect() const; diff --git a/sources/editor/ui/terminaleditor.cpp b/sources/editor/ui/terminaleditor.cpp index f3d23b7d9..c2097853b 100644 --- a/sources/editor/ui/terminaleditor.cpp +++ b/sources/editor/ui/terminaleditor.cpp @@ -84,6 +84,7 @@ void TerminalEditor::updateForm() ui->m_orientation_cb->setCurrentIndex(ui->m_orientation_cb->findData(m_part->property("orientation"))); ui->m_name_le->setText(m_part->terminalName()); ui->m_type_cb->setCurrentIndex(ui->m_type_cb->findData(m_part->terminalType())); + ui->m_potential_le->setText(m_part->potential()); ui->m_show_name_cb->setChecked(m_part->showName()); ui->m_label_x_dsb->setValue(m_part->labelPos().x()); @@ -263,6 +264,24 @@ void TerminalEditor::nameEdited() m_locked=false; } +void TerminalEditor::potentialEdited() +{ + if (m_locked) { + return; + } + + m_locked = true; + QString potential_(ui->m_potential_le->text()); + + if (m_part->potential() != potential_) + { + auto undo = new QPropertyUndoCommand(m_part, "potential", m_part->property("potential"), potential_); + undo->setText(tr("Modifier le potentiel d'une borne")); + undoStack().push(undo); + } + m_locked = false; +} + /** * @brief TerminalEditor::typeEdited */ @@ -457,6 +476,8 @@ void TerminalEditor::activeConnections(bool active) this, &TerminalEditor::labelAlignClicked); m_editor_connections << connect(ui->m_label_frame_cb, &QCheckBox::toggled, this, &TerminalEditor::labelFrameEdited); + m_editor_connections << connect(ui->m_potential_le, &QLineEdit::editingFinished, + this, &TerminalEditor::potentialEdited); m_editor_connections << connect(ui->m_use_master_label_cb, &QCheckBox::toggled, this, &TerminalEditor::useMasterLabelEdited); m_editor_connections << connect(ui->m_master_label_cb, QOverload<int>::of(&QComboBox::activated), @@ -486,6 +507,7 @@ void TerminalEditor::activeChangeConnections(bool active) m_change_connections << connect(m_part, &PartTerminal::labelVAlignmentChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::labelFrameChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::labelColorChanged, this, &TerminalEditor::updateForm); + m_change_connections << connect(m_part, &PartTerminal::potentialChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::useMasterLabelChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::masterLabelIndexChanged, this, &TerminalEditor::updateForm); } else { diff --git a/sources/editor/ui/terminaleditor.h b/sources/editor/ui/terminaleditor.h index 7c15d9f2c..5b2d9a83e 100644 --- a/sources/editor/ui/terminaleditor.h +++ b/sources/editor/ui/terminaleditor.h @@ -58,19 +58,20 @@ class TerminalEditor : public ElementItemEditor void orientationEdited(); void nameEdited(); void typeEdited(); + void potentialEdited(); void showNameEdited(); void labelPosEdited(); void labelFontClicked(); void labelSizeEdited(); void labelRotationEdited(); void labelAlignClicked(); - void labelFrameEdited(); - void labelColorClicked(); - void activeConnections(bool active); - void activeChangeConnections(bool active); - void useMasterLabelEdited(); - void masterLabelIndexEdited(); - bool updateMasterLabelVisibility(); + void labelFrameEdited(); + void labelColorClicked(); + void activeConnections(bool active); + void activeChangeConnections(bool active); + void useMasterLabelEdited(); + void masterLabelIndexEdited(); + bool updateMasterLabelVisibility(); private: Ui::TerminalEditor *ui; diff --git a/sources/editor/ui/terminaleditor.ui b/sources/editor/ui/terminaleditor.ui index 6dc2388cb..33eb50047 100644 --- a/sources/editor/ui/terminaleditor.ui +++ b/sources/editor/ui/terminaleditor.ui @@ -48,7 +48,7 @@ </property> </widget> </item> - <item row="4" column="1"> + <item row="5" column="1"> <widget class="QLineEdit" name="m_name_le"/> </item> <item row="2" column="1"> @@ -61,7 +61,7 @@ </property> </widget> </item> - <item row="4" column="0"> + <item row="5" column="0"> <widget class="QLabel" name="label_4"> <property name="text"> <string>Nom :</string> @@ -78,7 +78,21 @@ <item row="3" column="1"> <widget class="QComboBox" name="m_type_cb"/> </item> - <item row="5" column="0" colspan="2"> + <item row="4" column="0"> + <widget class="QLabel" name="label_potential"> + <property name="text"> + <string>Potentiel:</string> + </property> + </widget> + </item> + <item row="4" column="1"> + <widget class="QLineEdit" name="m_potential_le"> + <property name="toolTip"> + <string>Sans effet si "Isolation du potentiel" n'est pas cochée (toutes les bornes du bloc restent alors reliées). Si elle est cochée : les bornes partageant la même valeur restent reliées entre elles, les autres sont isolées.</string> + </property> + </widget> + </item> + <item row="6" column="0" colspan="2"> <widget class="QGroupBox" name="m_label_gb"> <property name="title"> <string>Nom de la borne</string> @@ -214,7 +228,7 @@ </layout> </widget> </item> - <item row="6" column="0" colspan="2"> + <item row="7" column="0" colspan="2"> <widget class="QGroupBox" name="m_master_label_gb"> <property name="title"> <string>Étiquette du maître</string> diff --git a/sources/properties/terminaldata.cpp b/sources/properties/terminaldata.cpp index 1805ba3c9..f8a371107 100644 --- a/sources/properties/terminaldata.cpp +++ b/sources/properties/terminaldata.cpp @@ -129,6 +129,9 @@ QDomElement TerminalData::toXml(QDomDocument &xml_document) const xml_element.setAttribute("label_color", m_label_color.name()); } + if (!m_potential.isEmpty()) + xml_element.setAttribute("potential", m_potential); + // Save master label override settings if (m_use_master_label) { xml_element.setAttribute("use_master_label", "true"); @@ -207,6 +210,8 @@ bool TerminalData::fromXml (const QDomElement &xml_element) m_label_color = QColor(color_str); } + m_potential = xml_element.attribute("potential"); + // Read master label override settings m_use_master_label = (xml_element.attribute("use_master_label") == QLatin1String("true")); m_master_label_index = xml_element.attribute("master_label_index", "0").toInt(); diff --git a/sources/properties/terminaldata.h b/sources/properties/terminaldata.h index 9032e6b2c..7d269b4cd 100644 --- a/sources/properties/terminaldata.h +++ b/sources/properties/terminaldata.h @@ -103,6 +103,18 @@ class TerminalData : public PropertiesInterface */ QString m_name; + /** + @brief m_potential + An optional, symbol-author-chosen grouping identifier shared by + terminals that belong to the same physical terminal within + a multi-terminal block. When potential_isolating is enabled + on the parent element, terminals sharing a non-empty, + matching m_potential stay linked to each other; terminals + with different (or empty) values become isolated from each + other. Empty by default. + */ + QString m_potential; + /** @brief m_pos Position of the terminal. The second point is calculated diff --git a/sources/qetgraphicsitem/terminal.cpp b/sources/qetgraphicsitem/terminal.cpp index ec862b39c..a09efec12 100644 --- a/sources/qetgraphicsitem/terminal.cpp +++ b/sources/qetgraphicsitem/terminal.cpp @@ -927,6 +927,18 @@ TerminalData::Type Terminal::terminalType() const return d->m_type; } +/** + @brief Terminal::potential + @return this terminal's own potential-group identifier (@see + TerminalData::m_potential). + An author-chosen grouping used only + within a single multi-terminal element. +*/ +QString Terminal::potential() const +{ + return d->m_potential; +} + /** @brief Terminal::setUseMasterLabel Set whether this terminal uses a label from the master's contact group @@ -977,8 +989,22 @@ QList<Terminal *> relatedPotentialTerminal ( { // English: Check if the user activated the potential isolation checkbox for this terminal if (terminal->parentElement()->elementInformations().value(QStringLiteral("potential_isolating")).toString() == QLatin1String("true")) { - // English: Potential is isolated. Return an empty list so it does not propagate to the other side. - return QList<Terminal *>(); + // English: Potential is isolated -- but terminals sharing this + // terminal's own, non-empty potential-group identifier + // (@see TerminalData::m_potential, set per-terminal in the + // element editor) still belong to the same physical terminal + // and stay linked to each other. An empty/unset potential on + // every terminal reproduces the previous, fully-isolated + // behavior exactly, so existing elements are unaffected. + const QString this_potential = terminal->potential(); + QList<Terminal *> same_potential; + if (!this_potential.isEmpty()) { + for (Terminal *t : terminal->parentElement()->terminals()) { + if (t != terminal && t->potential() == this_potential) + same_potential << t; + } + } + return same_potential; } QList <Terminal *> terminals = terminal->parentElement()->terminals(); diff --git a/sources/qetgraphicsitem/terminal.h b/sources/qetgraphicsitem/terminal.h index a6eae784c..e5e17b4fa 100644 --- a/sources/qetgraphicsitem/terminal.h +++ b/sources/qetgraphicsitem/terminal.h @@ -79,6 +79,7 @@ class Terminal : public QGraphicsObject QString name () const; QString baseName () const; TerminalData::Type terminalType() const; + QString potential() const; bool useMasterLabel() const { return d->m_use_master_label; } void setUseMasterLabel(bool use); int masterLabelIndex() const { return d->m_master_label_index; } From 1e1039dd3227533b6b2c30a5c37f00130d6f7bf1 Mon Sep 17 00:00:00 2001 From: Levi Jetzer <levi.jetzer@ibsys.ch> Date: Fri, 4 Sep 2026 13:12:21 +0200 Subject: [PATCH 26/95] Address review 1. Drop dead prepareGeometryChange()/update() calls in setPotential(), split unrelated terminaleditor.h re-indent into its own change 2. Removed: setPotential() had prepareGeometryChange()/update() left over from the label-display mechanism that was dropped before this PR --- sources/editor/graphicspart/partterminal.cpp | 2 -- sources/editor/ui/terminaleditor.h | 14 +++++++------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/sources/editor/graphicspart/partterminal.cpp b/sources/editor/graphicspart/partterminal.cpp index 1516d804c..5736db5d8 100644 --- a/sources/editor/graphicspart/partterminal.cpp +++ b/sources/editor/graphicspart/partterminal.cpp @@ -479,9 +479,7 @@ void PartTerminal::setMasterLabelIndex(int index) void PartTerminal::setPotential(const QString &potential) { if (d->m_potential == potential) return; - prepareGeometryChange(); d->m_potential = potential; - update(); emit potentialChanged(); } diff --git a/sources/editor/ui/terminaleditor.h b/sources/editor/ui/terminaleditor.h index 5b2d9a83e..57f6ea5e6 100644 --- a/sources/editor/ui/terminaleditor.h +++ b/sources/editor/ui/terminaleditor.h @@ -65,13 +65,13 @@ class TerminalEditor : public ElementItemEditor void labelSizeEdited(); void labelRotationEdited(); void labelAlignClicked(); - void labelFrameEdited(); - void labelColorClicked(); - void activeConnections(bool active); - void activeChangeConnections(bool active); - void useMasterLabelEdited(); - void masterLabelIndexEdited(); - bool updateMasterLabelVisibility(); + void labelFrameEdited(); + void labelColorClicked(); + void activeConnections(bool active); + void activeChangeConnections(bool active); + void useMasterLabelEdited(); + void masterLabelIndexEdited(); + bool updateMasterLabelVisibility(); private: Ui::TerminalEditor *ui; From a7fa4dfdcfb10e9e036a3d29d293f23eaf671a6f Mon Sep 17 00:00:00 2001 From: plc-user <74435298+plc-user@users.noreply.github.com> Date: Fri, 4 Sep 2026 21:46:23 +0200 Subject: [PATCH 27/95] FIX language-setting Set language to system-default on start-up, if for whatever reason the setting in file or registry for language is empty. --- sources/qetapp.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/qetapp.cpp b/sources/qetapp.cpp index 0463be2ee..c07f23c2b 100644 --- a/sources/qetapp.cpp +++ b/sources/qetapp.cpp @@ -267,7 +267,7 @@ QString QETApp::langFromSetting() { QSettings settings; system_language = settings.value("lang", "system").toString(); - if(system_language == "system") { + if ((system_language == "system") || (system_language == QString())) { // Keep the full locale (e.g. "pt_BR"), not just the base language // ("pt"): QET ships regional translations (pt_BR, nl_BE, nl_NL) and // truncating here loaded the wrong one. setLanguage() falls back to From 3e66d403c8aa85351dbda10182d4230e8b48ce6b Mon Sep 17 00:00:00 2001 From: plc-user <74435298+plc-user@users.noreply.github.com> Date: Sat, 5 Sep 2026 00:22:35 +0200 Subject: [PATCH 28/95] adjust whitespace --- sources/qetapp.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/qetapp.cpp b/sources/qetapp.cpp index c07f23c2b..ef53108d7 100644 --- a/sources/qetapp.cpp +++ b/sources/qetapp.cpp @@ -1423,7 +1423,7 @@ QFont QETApp::diagramTextsItemFont(qreal size) @param size @return dynamic text font with PointSizeF(size) */ - QFont QETApp::dynamicTextsItemFont(qreal size) +QFont QETApp::dynamicTextsItemFont(qreal size) { QSettings settings; //Font to use From 6b577ee75727158e12702ebe9c16d2b3ee0b8fc1 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sat, 5 Sep 2026 15:48:28 +0200 Subject: [PATCH 29/95] Add editable resize/rotate/skew handles for shapes and images Shapes and images can now be resized, rotated, and skewed directly on the canvas, not just moved. Both share one small transform struct (rotation, then skew, then scale, anchored on a movable pivot) and one handle widget, so a corner drag, an edge skew, or grabbing the rotate handle behaves the same way and runs through the same matrix math everywhere, instead of every item type reinventing its own. Shapes also gained a proper pen tool (bezier paths, corner/smooth/ symmetric nodes), arc support, and mirroring. Images gained non-destructive cropping and colour-keyed transparency, both remember their own settings, so reopening the dialog picks up where you left off instead of starting over. Properties dialogs for both were extended to match (position, size, angle, skew), with undo/redo wired through for every handle drag. Old XML files can read easily as the transformation is only added if needed and the old syntax is still used and understood if it is not needed. --- cmake/qet_compilation_vars.cmake | 10 + .../apps/hidef/draw-bezier-curves.svg | 12 + qelectrotech.qrc | 1 + sources/diagramevent/diagrameventaddimage.cpp | 160 +- sources/diagramevent/diagrameventaddimage.h | 7 + sources/diagramevent/diagrameventaddpath.cpp | 427 +++ sources/diagramevent/diagrameventaddpath.h | 81 + sources/diagramevent/diagrameventaddshape.cpp | 276 +- sources/diagramevent/diagrameventaddshape.h | 15 + sources/qetdiagrameditor.cpp | 64 +- sources/qetgraphicsitem/diagramimageitem.cpp | 1457 +++++++++- sources/qetgraphicsitem/diagramimageitem.h | 136 +- sources/qetgraphicsitem/qetshapeitem.cpp | 2529 +++++++++++++++-- sources/qetgraphicsitem/qetshapeitem.h | 201 +- sources/qetgraphicsitem/shapetransform.cpp | 88 + sources/qetgraphicsitem/shapetransform.h | 90 + sources/qeticons.cpp | 2 + sources/qeticons.h | 1 + sources/ui/imagecropdialog.cpp | 287 ++ sources/ui/imagecropdialog.h | 121 + sources/ui/imagepropertieswidget.cpp | 251 +- sources/ui/imagepropertieswidget.h | 23 +- sources/ui/imagepropertieswidget.ui | 211 +- sources/ui/imagetransparentcolordialog.cpp | 335 +++ sources/ui/imagetransparentcolordialog.h | 133 + .../ui/shapegraphicsitempropertieswidget.cpp | 117 +- .../ui/shapegraphicsitempropertieswidget.ui | 77 +- sources/undocommand/promoteshapecommand.cpp | 43 + sources/undocommand/promoteshapecommand.h | 62 + 29 files changed, 6784 insertions(+), 433 deletions(-) create mode 100644 ico/breeze-icons/scalable/apps/hidef/draw-bezier-curves.svg create mode 100644 sources/diagramevent/diagrameventaddpath.cpp create mode 100644 sources/diagramevent/diagrameventaddpath.h create mode 100644 sources/qetgraphicsitem/shapetransform.cpp create mode 100644 sources/qetgraphicsitem/shapetransform.h create mode 100644 sources/ui/imagecropdialog.cpp create mode 100644 sources/ui/imagecropdialog.h create mode 100644 sources/ui/imagetransparentcolordialog.cpp create mode 100644 sources/ui/imagetransparentcolordialog.h create mode 100644 sources/undocommand/promoteshapecommand.cpp create mode 100644 sources/undocommand/promoteshapecommand.h diff --git a/cmake/qet_compilation_vars.cmake b/cmake/qet_compilation_vars.cmake index 2bc2edcce..7fc68a769 100644 --- a/cmake/qet_compilation_vars.cmake +++ b/cmake/qet_compilation_vars.cmake @@ -318,6 +318,8 @@ set(QET_SRC_FILES ${QET_DIR}/sources/diagramevent/diagrameventaddimage.h ${QET_DIR}/sources/diagramevent/diagrameventaddshape.cpp ${QET_DIR}/sources/diagramevent/diagrameventaddshape.h + ${QET_DIR}/sources/diagramevent/diagrameventaddpath.cpp + ${QET_DIR}/sources/diagramevent/diagrameventaddpath.h ${QET_DIR}/sources/diagramevent/diagrameventaddtext.cpp ${QET_DIR}/sources/diagramevent/diagrameventaddtext.h ${QET_DIR}/sources/diagramevent/diagrameventinterface.cpp @@ -518,6 +520,8 @@ set(QET_SRC_FILES ${QET_DIR}/sources/qetgraphicsitem/qetgraphicsitem.h ${QET_DIR}/sources/qetgraphicsitem/qetshapeitem.cpp ${QET_DIR}/sources/qetgraphicsitem/qetshapeitem.h + ${QET_DIR}/sources/qetgraphicsitem/shapetransform.cpp + ${QET_DIR}/sources/qetgraphicsitem/shapetransform.h ${QET_DIR}/sources/qetgraphicsitem/qgraphicsitemutility.cpp ${QET_DIR}/sources/qetgraphicsitem/qgraphicsitemutility.h ${QET_DIR}/sources/qetgraphicsitem/reportelement.cpp @@ -718,8 +722,12 @@ set(QET_SRC_FILES ${QET_DIR}/sources/ui/elementpropertieswidget.h ${QET_DIR}/sources/ui/formulaassistantdialog.cpp ${QET_DIR}/sources/ui/formulaassistantdialog.h + ${QET_DIR}/sources/ui/imagecropdialog.cpp + ${QET_DIR}/sources/ui/imagecropdialog.h ${QET_DIR}/sources/ui/imagepropertieswidget.cpp ${QET_DIR}/sources/ui/imagepropertieswidget.h + ${QET_DIR}/sources/ui/imagetransparentcolordialog.cpp + ${QET_DIR}/sources/ui/imagetransparentcolordialog.h ${QET_DIR}/sources/ui/importelementdialog.cpp ${QET_DIR}/sources/ui/importelementdialog.h ${QET_DIR}/sources/ui/importelementtextpatterndialog.cpp @@ -790,6 +798,8 @@ set(QET_SRC_FILES ${QET_DIR}/sources/undocommand/setautonumcontextcommand.h ${QET_DIR}/sources/undocommand/rotateselectioncommand.cpp ${QET_DIR}/sources/undocommand/rotateselectioncommand.h + ${QET_DIR}/sources/undocommand/promoteshapecommand.cpp + ${QET_DIR}/sources/undocommand/promoteshapecommand.h ${QET_DIR}/sources/undocommand/rotatetextscommand.cpp ${QET_DIR}/sources/undocommand/rotatetextscommand.h ${QET_DIR}/sources/undocommand/movegraphicsitemcommand.cpp diff --git a/ico/breeze-icons/scalable/apps/hidef/draw-bezier-curves.svg b/ico/breeze-icons/scalable/apps/hidef/draw-bezier-curves.svg new file mode 100644 index 000000000..677ae6200 --- /dev/null +++ b/ico/breeze-icons/scalable/apps/hidef/draw-bezier-curves.svg @@ -0,0 +1,12 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"> + <defs id="defs3051"> + <style type="text/css" id="current-color-scheme"> + .ColorScheme-Text { + color:#232629; + } + </style> + </defs> + <g transform="translate(1,1)"> + <path style="fill:currentColor;fill-opacity:1;stroke:none" d="m18.5 4c-.65424 0-1.202197.418077-1.408203 1h-13.0918v1c3.601 0 6.5 2.899 6.5 6.5 0 1.905514-.822115 3.601777-2.121094 4.787109-.245727-.180239-.548776-.287109-.878906-.287109-.831 0-1.5.669-1.5 1.5 0 .831.669 1.5 1.5 1.5.65424 0 1.202197-.418077 1.408203-1h4.091797v1h3v-3h-3v1h-3.912109c1.479147-1.367931 2.412109-3.317097 2.412109-5.5 0-2.788667-1.510668-5.207469-3.757813-6.5h9.349609c.206006.581923.753963 1 1.408203 1 .831 0 1.5-.669 1.5-1.5 0-.831-.669-1.5-1.5-1.5m0 1c.277 0 .5.223.5.5 0 .277-.223.5-.5.5-.06925 0-.135453-.013828-.195312-.039063-.179579-.075703-.304688-.253188-.304688-.460938 0-.06925.013828-.135453.039062-.195313.075704-.179578.253188-.304688.460938-.304688m-11 13c.277 0 .5.223.5.5 0 .277-.223.5-.5.5-.277 0-.5-.223-.5-.5 0-.277.223-.5.5-.5m6.5 0h1v1h-1v-1z" transform="translate(-.99999-.99999)" class="ColorScheme-Text"/> + </g> +</svg> diff --git a/qelectrotech.qrc b/qelectrotech.qrc index 531dde1f4..17fb20b03 100644 --- a/qelectrotech.qrc +++ b/qelectrotech.qrc @@ -548,6 +548,7 @@ <file>ico/breeze-icons/scalable/mimetypes/small/48x48/application-x-qet-element.svgz</file> <file>ico/breeze-icons/scalable/mimetypes/small/48x48/application-x-qet-project.svgz</file> <file>ico/breeze-icons/scalable/mimetypes/small/48x48/application-x-qet-titleblock.svgz</file> + <file>ico/breeze-icons/scalable/apps/hidef/draw-bezier-curves.svg</file> <file>ico/16x16/object-group.png</file> <file>ico/mac_icon/elmt.icns</file> <file>ico/mac_icon/qelectrotech.icns</file> diff --git a/sources/diagramevent/diagrameventaddimage.cpp b/sources/diagramevent/diagrameventaddimage.cpp index 8b091a75e..a8e145659 100644 --- a/sources/diagramevent/diagrameventaddimage.cpp +++ b/sources/diagramevent/diagrameventaddimage.cpp @@ -19,10 +19,14 @@ #include "diagrameventaddimage.h" #include "../qetapp.h" +#include "../qetdiagrameditor.h" #include "../diagram.h" #include "../undocommand/addgraphicsobjectcommand.h" #include "../qetgraphicsitem/diagramimageitem.h" +#include <QStatusBar> +#include <QTimer> + /** @brief DiagramEventAddImage::DiagramEventAddImage Default constructor @@ -34,6 +38,16 @@ DiagramEventAddImage::DiagramEventAddImage(Diagram *diagram) : m_is_added (false) { openDialog(); + if (m_running) + { + // Deferred for the same reason as the shape tools' own + // constructor-time hint: Diagram::setEventInterface() destroys + // whatever tool was previously active *after* this constructor + // returns, and that tool's own destructor clears the status bar + // -- an immediate show here would just get wiped out moments + // later by that cleanup. + QTimer::singleShot(0, this, [this]() { showHint(); }); + } } /** @@ -47,33 +61,61 @@ DiagramEventAddImage::~DiagramEventAddImage() delete m_image; } + if (!m_diagram->views().isEmpty()) + { + if (auto *editor = QETApp::diagramEditorAncestorOf(m_diagram->views().constFirst())) + editor->statusBar()->clearMessage(); + } + foreach (QGraphicsView *view, m_diagram->views()) view->setContextMenuPolicy((Qt::DefaultContextMenu)); } +/** + @brief DiagramEventAddImage::showHint + Re-asserted on every move (see mouseMoveEvent), not just once at + activation: Qt's own built-in "show an action's statusTip on hover" + has its own internal "restore whatever was there before" logic for + when the hover ends. Since this message is first shown *during* that + same hover session (the user is still over the toolbar icon when the + deferred constructor-time call above fires), Qt's hover-tracking has + no idea this code changed the status bar in the meantime -- the + moment the mouse leaves the icon for the canvas, it silently + restores whatever it remembers being there before its own tip + started, overwriting this one. Re-showing it on every move within + the canvas simply outlasts that one-time restore -- the exact same + issue already found and fixed for the shape tools. +*/ +void DiagramEventAddImage::showHint() const +{ + if (m_diagram->views().isEmpty()) + return; + if (auto *editor = QETApp::diagramEditorAncestorOf(m_diagram->views().constFirst())) + editor->statusBar()->showMessage(tr("Clic : positionner à la taille d'origine. " + "Cliquer-glisser : positionner et redimensionner. " + "Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.")); +} + /** @brief DiagramEventAddImage::mousePressEvent - Action when mouse is pressed + Left button: starts a potential drag-to-resize, anchored here -- but + doesn't commit to anything yet. A quick click-release (see + mouseMoveEvent's threshold check) still places the image at its + original size, matching the previous behavior exactly; only an + actual drag switches to resizing. Right button still rotates in 90 + degree steps, unchanged, and only while not already left-dragging. @param event : event of mouse pressed */ void DiagramEventAddImage::mousePressEvent(QGraphicsSceneMouseEvent *event) { - if (m_image && event -> button() == Qt::LeftButton) + if (m_image && event->button() == Qt::LeftButton) { - QPointF pos = event->scenePos(); - pos.rx() -= m_image->boundingRect().width()/2; - pos.ry() -= m_image->boundingRect().height()/2; - m_diagram -> undoStack().push (new AddGraphicsObjectCommand(m_image, m_diagram, pos)); - - for (QGraphicsView *view : m_diagram->views()) { - view->setContextMenuPolicy((Qt::DefaultContextMenu)); - } - - m_running = false; - emit finish(); + m_pressed = true; + m_resize_engaged = false; + m_press_pos = event->scenePos(); event->setAccepted(true); } - else if (m_image && event -> button() == Qt::RightButton) + else if (m_image && !m_pressed && event->button() == Qt::RightButton) { m_image->setRotation(m_image->rotation() + 90); event->setAccepted(true); @@ -87,26 +129,95 @@ void DiagramEventAddImage::mousePressEvent(QGraphicsSceneMouseEvent *event) */ void DiagramEventAddImage::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { - if (!m_image || event->buttons() != Qt::NoButton) { + if (!m_image) { return; } - + + showHint(); + QPointF pos = event->scenePos(); - + if (!m_is_added) { for (QGraphicsView *view : m_diagram->views()) { view->setContextMenuPolicy((Qt::NoContextMenu)); } - + m_diagram->addItem(m_image); m_is_added = true; } - - m_image->setPos(pos - m_image->boundingRect().center()); + + if (m_pressed) + { + // Anchored on m_press_pos, not the item's own current position: + // dragging in any direction has to visibly grow the image from + // where the click started, not from wherever the "no button + // held" preview phase happened to leave it centered. + const QPointF delta = pos - m_press_pos; + if (!m_resize_engaged && QLineF(m_press_pos, pos).length() >= 4.0) + m_resize_engaged = true; // latched: crossing back within the threshold afterward must not un-engage it + + if (!m_resize_engaged) + { + // Still just a (so far) plain click -- keep behaving like + // the pre-drag preview: original size, centered here, so + // releasing right now reproduces the old click-to-place + // behavior exactly. + m_image->setPos(m_press_pos - m_image->boundingRect().center()); + } + else + { + const QSizeF naturalSize = m_image->boundingRect().size(); + if (naturalSize.width() > 0 && naturalSize.height() > 0) + { + const qreal scaleX = qAbs(delta.x()) / naturalSize.width(); + const qreal scaleY = qAbs(delta.y()) / naturalSize.height(); + // The larger of the two, not a per-axis stretch: images + // only support a single uniform scale today (see + // boundingRect()/paint(), which never touch aspect + // ratio), so this is a diagonal-drag size, not a + // free-form one -- breaking aspect ratio on purpose is + // its own, separate, larger piece of work. + const qreal newScale = qBound(0.01, qMax(scaleX, scaleY), 50.0); + m_image->setScale(newScale); + } + m_image->setPos(qMin(m_press_pos.x(), pos.x()), qMin(m_press_pos.y(), pos.y())); + } + } + else + { + m_image->setPos(pos - m_image->boundingRect().center()); + } + event->setAccepted(true); } +/** + @brief DiagramEventAddImage::mouseReleaseEvent + Left button release commits whatever mouseMoveEvent last set -- + original size and centered if the press never turned into a real + drag, or the dragged-out size and position otherwise. Either way, + this is the only place placement is actually finalized now; a plain + click no longer finishes inside mousePressEvent itself, since it has + to wait and see whether a drag follows. + @param event : event of mouse release +*/ +void DiagramEventAddImage::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) +{ + if (m_image && m_pressed && event->button() == Qt::LeftButton) + { + m_diagram->undoStack().push(new AddGraphicsObjectCommand(m_image, m_diagram, m_image->pos())); + + for (QGraphicsView *view : m_diagram->views()) { + view->setContextMenuPolicy((Qt::DefaultContextMenu)); + } + + m_running = false; + emit finish(); + event->setAccepted(true); + } +} + /** @brief DiagramEventAddImage::mouseDoubleClickEvent This method is used only to overwrite double click. @@ -124,7 +235,14 @@ void DiagramEventAddImage::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event */ void DiagramEventAddImage::wheelEvent(QGraphicsSceneWheelEvent *event) { - if (!m_is_added || !m_image || event -> modifiers() != Qt::CTRL) { + // !m_pressed added alongside the modifier fix: without it, wheel + // scaling could fight with an active drag-resize, both trying to + // set scale() from different sources in the same gesture. + // event->modifiers() & Qt::ControlModifier, not != Qt::CTRL: the + // same exact-equality bug already found and fixed several times + // this session elsewhere -- Ctrl held together with any other + // modifier would silently fail to register as Ctrl at all. + if (!m_is_added || !m_image || m_pressed || !(event->modifiers() & Qt::ControlModifier)) { return; } diff --git a/sources/diagramevent/diagrameventaddimage.h b/sources/diagramevent/diagrameventaddimage.h index b81bf7aa9..48e45618d 100644 --- a/sources/diagramevent/diagrameventaddimage.h +++ b/sources/diagramevent/diagrameventaddimage.h @@ -20,6 +20,8 @@ #include "diagrameventinterface.h" +#include <QPointF> + class Diagram; class DiagramImageItem; @@ -37,15 +39,20 @@ class DiagramEventAddImage : public DiagramEventInterface void mousePressEvent (QGraphicsSceneMouseEvent *event) override; void mouseMoveEvent (QGraphicsSceneMouseEvent *event) override; + void mouseReleaseEvent (QGraphicsSceneMouseEvent *event) override; void mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event) override; void wheelEvent (QGraphicsSceneWheelEvent *event) override; bool isNull () const; private: void openDialog(); + void showHint() const; DiagramImageItem *m_image; bool m_is_added; + bool m_pressed = false; // left button held: dragging out a size, not just positioning + bool m_resize_engaged = false; // latched once the drag threshold is crossed, matching the pen tool's own curve-drag threshold convention -- so dragging out and back near the start point doesn't "snap back" to original size before release + QPointF m_press_pos; // scene position of the left-button press, the resize anchor }; #endif // DIAGRAMEVENTADDIMAGE_H diff --git a/sources/diagramevent/diagrameventaddpath.cpp b/sources/diagramevent/diagrameventaddpath.cpp new file mode 100644 index 000000000..f7e8b9c76 --- /dev/null +++ b/sources/diagramevent/diagrameventaddpath.cpp @@ -0,0 +1,427 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#include "diagrameventaddpath.h" + +#include "../diagram.h" +#include "../lastusedstyle.h" +#include "../qetapp.h" +#include "../qetdiagrameditor.h" +#include "../undocommand/addgraphicsobjectcommand.h" + +#include <QGraphicsLineItem> +#include <QGraphicsSceneMouseEvent> +#include <QKeyEvent> +#include <QLineF> +#include <QStatusBar> +#include <QTimer> + +/** + @brief DiagramEventAddPath::DiagramEventAddPath + @param diagram : the diagram where this event must operate +*/ +DiagramEventAddPath::DiagramEventAddPath(Diagram *diagram) : + DiagramEventInterface(diagram), + m_shape_item (nullptr), + m_help_horiz (nullptr), + m_help_verti (nullptr) +{ + m_running = true; + init(); + // Deferred for the same reason as DiagramEventAddShape's own + // constructor-time hint: Diagram::setEventInterface() destroys + // whatever tool was previously active *after* this constructor + // returns, and that tool's own destructor clears the status bar -- + // an immediate show here would just get wiped out moments later. + QTimer::singleShot(0, this, [this]() { showHint(); }); +} + +DiagramEventAddPath::~DiagramEventAddPath() +{ + if ((m_running || m_abort) && m_shape_item) + { + m_diagram->removeItem(m_shape_item); + delete m_shape_item; + } + delete m_help_horiz; + delete m_help_verti; + + if (m_diagram && !m_diagram->views().isEmpty()) + { + if (auto *editor = QETApp::diagramEditorAncestorOf(m_diagram->views().constFirst())) + editor->statusBar()->clearMessage(); + } + + foreach (QGraphicsView *v, m_diagram->views()) + v->setContextMenuPolicy(Qt::DefaultContextMenu); +} + +/** + @brief DiagramEventAddPath::showHint + Re-asserted on every move within the canvas (see mouseMoveEvent), not + just once at activation: Qt's own built-in "show an action's + statusTip on hover" has its own internal "restore whatever was there + before" logic for when the hover ends. Since this message is first + shown *during* that same hover session (the user is still over the + toolbar icon when the deferred constructor-time call above fires), + Qt's hover-tracking has no idea this code changed the status bar in + the meantime -- the moment the mouse leaves the icon for the canvas, + it silently restores whatever it remembers being there before its + own tip started, overwriting this one. Re-showing it on every move + within the canvas simply outlasts that one-time restore. +*/ +void DiagramEventAddPath::showHint() const +{ + if (!m_diagram || m_diagram->views().isEmpty()) + return; + if (auto *editor = QETApp::diagramEditorAncestorOf(m_diagram->views().constFirst())) + editor->statusBar()->showMessage(tr("Clic: point anguleux. Cliquer-glisser: point courbe. " + "Clic sur le premier point: fermer. Échap/Entrée: terminer. " + "Clic droit: annuler le dernier point.")); +} + +void DiagramEventAddPath::init() +{ + foreach (QGraphicsView *v, m_diagram->views()) + v->setContextMenuPolicy(Qt::NoContextMenu); +} + +QPointF DiagramEventAddPath::snapped(const QPointF &scenePos, Qt::KeyboardModifiers mods) const +{ + return mods == Qt::ControlModifier ? scenePos : Diagram::snapToGrid(scenePos); +} + +int DiagramEventAddPath::confirmedNodeCount() const +{ + // The trailing element is always the live preview while m_shape_item + // exists; with no shape yet there are no nodes of any kind. + return m_shape_item ? qMax(0, m_nodes.size() - 1) : 0; +} + +/** + @brief DiagramEventAddPath::mousePressEvent + Left click: on the very first click, creates the shape with a real + node *and* an immediate preview node at the same spot, so a segment + exists (even if zero-length) from the start rather than requiring a + second click before anything is visible. On later clicks: either + confirms the live preview into a real point and appends a fresh one + for the next segment, or -- if close enough to the first node -- + closes the path. +*/ +void DiagramEventAddPath::mousePressEvent(QGraphicsSceneMouseEvent *event) +{ + if (Q_UNLIKELY(m_diagram->isReadOnly())) + return; + + if (event->button() != Qt::LeftButton) + { + // Accept every button while this tool is running, not just the + // one it actually acts on -- Diagram::mousePressEvent falls + // through to Qt's own default scene handling for anything left + // unaccepted, which is exactly the kind of competing control + // this tool can't afford while it's supposed to have exclusive + // ownership of input. + event->setAccepted(true); + return; + } + + const QPointF pos = snapped(event->scenePos(), event->modifiers()); + + if (!m_shape_item) + { + m_shape_item = new QetShapeItem(pos, pos, QetShapeItem::Path); + if (LastUsedStyle::hasShapePen()) + m_shape_item->setPen(LastUsedStyle::shapePen()); + if (LastUsedStyle::hasShapeBrush()) + m_shape_item->setBrush(LastUsedStyle::shapeBrush()); + m_diagram->addItem(m_shape_item); + // Handles only ever get built for a selected item. + m_shape_item->setSelected(true); + + QetShapeItem::PathNode node; + node.anchor = pos; + m_nodes << node; + m_nodes << node; // live preview, tracks the mouse from here on + m_shape_item->setPathNodes(m_nodes); + m_shape_item->enableNodeEditMode(); + + m_dragging_node = 0; + event->setAccepted(true); + return; + } + + if (confirmedNodeCount() >= 2 && nearFirstNode(pos)) + { + finishPath(true); + event->setAccepted(true); + return; + } + + // Confirm the preview node as a real point, then append a fresh + // preview (a plain Corner, not a copy of the just-confirmed node's + // kind/handles) for the segment after it. + m_dragging_node = m_nodes.size() - 1; + m_nodes[m_dragging_node].anchor = pos; + + QetShapeItem::PathNode preview; + preview.anchor = pos; + m_nodes << preview; + + m_shape_item->setPathNodes(m_nodes); + m_shape_item->enableNodeEditMode(); + event->setAccepted(true); +} + +/** + @brief DiagramEventAddPath::mouseMoveEvent + Two mutually exclusive behaviours, matching whether a button is held: + with the left button down on a just-placed node, dragging shapes that + node's handles (same convention as editing an existing node -- see + QetShapeItem::dragPathControlHandle()). With no button held, the + trailing preview node instead tracks the mouse, giving the live + rubber-band segment. +*/ +void DiagramEventAddPath::mouseMoveEvent(QGraphicsSceneMouseEvent *event) +{ + updateHelpCross(event->scenePos()); + showHint(); + + if (m_shape_item) + { + const QPointF pos = snapped(event->scenePos(), event->modifiers()); + + if (m_dragging_node >= 0 && (event->buttons() & Qt::LeftButton)) + { + QetShapeItem::PathNode &node = m_nodes[m_dragging_node]; + const QPointF delta = pos - node.anchor; + + // A small threshold so an accidental few-pixel wobble on + // what was meant to be a plain click doesn't silently add + // curve handles the user never intended. + if (QLineF(QPointF(), delta).length() > 3.0) + { + node.kind = QetShapeItem::NodeKind::Smooth; + node.outHandle = delta; + node.inHandle = -delta; + } + else + { + node.kind = QetShapeItem::NodeKind::Corner; + node.outHandle.reset(); + node.inHandle.reset(); + } + m_shape_item->setPathNodes(m_nodes); + } + else if (!(event->buttons() & Qt::LeftButton) && !m_nodes.isEmpty()) + { + m_nodes.last().anchor = pos; + m_shape_item->setPathNodes(m_nodes); + } + } + + // Ours unconditionally while running: a stray, unaccepted move event + // falling through to Qt's default handling risks it dragging our + // selected, movable in-progress shape out from under the tool. + event->setAccepted(true); +} + +/** + @brief DiagramEventAddPath::mouseReleaseEvent + Left release just ends the current node's drag phase (the trailing + preview resumes tracking the mouse on the next move). Right release + steps back one *confirmed* point (the preview is left alone), or + cancels outright once only one remains, or exits the tool entirely if + nothing is in progress at all. +*/ +void DiagramEventAddPath::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) +{ + if (event->button() == Qt::LeftButton) + { + m_dragging_node = -1; + } + else if (event->button() == Qt::RightButton) + { + if (m_shape_item) + { + if (confirmedNodeCount() > 1) + { + m_nodes.remove(m_nodes.size() - 2); // the last *confirmed* node; keep the trailing preview + m_shape_item->setPathNodes(m_nodes); + } + else + { + cancelPath(); + } + } + else + { + m_running = false; + emit finish(); + } + } + event->setAccepted(true); +} + +/** + @brief DiagramEventAddPath::mouseDoubleClickEvent + A double-click is a press, release, press, release, doubleclick + sequence -- the second press already confirmed the preview into a + duplicate point (mousePressEvent can't distinguish a double-click + from two single clicks in the same place) and appended a fresh + preview after it. Dropping the last node here removes that fresh + preview; finishPath()'s own trailing-preview removal then removes the + duplicate underneath it, leaving only the genuinely-placed points. +*/ +void DiagramEventAddPath::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) +{ + if (m_shape_item && event->button() == Qt::LeftButton && !m_nodes.isEmpty()) + { + m_nodes.removeLast(); + finishPath(false); + } + event->setAccepted(true); +} + +/** + @brief DiagramEventAddPath::keyPressEvent + Escape or Enter finish the path open once at least two real points + exist; Escape with fewer (or none placed at all) cancels/exits + instead, since there's nothing meaningful to keep. +*/ +void DiagramEventAddPath::keyPressEvent(QKeyEvent *event) +{ + if (event->key() == Qt::Key_Escape) + { + if (m_shape_item && confirmedNodeCount() >= 2) + finishPath(false); + else if (m_shape_item) + cancelPath(); + else + { + m_running = false; + emit finish(); + } + event->accept(); + } + else if ((event->key() == Qt::Key_Return || event->key() == Qt::Key_Enter) + && m_shape_item && confirmedNodeCount() >= 2) + { + finishPath(false); + event->accept(); + } +} + +/** + @brief DiagramEventAddPath::finishPath + Strips the trailing live-preview node, commits the in-progress path + onto the undo stack, and resets so the tool is ready to draw another + one immediately -- matching every other shape tool's own behaviour + after finishing a shape. +*/ +void DiagramEventAddPath::finishPath(bool closed) +{ + if (!m_shape_item) + return; + + if (!m_nodes.isEmpty()) + m_nodes.removeLast(); + + if (m_nodes.size() < 2) + { + cancelPath(); + return; + } + + if (closed) + m_shape_item->setClosed(true); + + m_shape_item->setPathNodes(m_nodes); + m_diagram->undoStack().push(new AddGraphicsObjectCommand(m_shape_item, m_diagram)); + m_shape_item = nullptr; + m_nodes.clear(); + m_dragging_node = -1; +} + +/** + @brief DiagramEventAddPath::cancelPath + Discards the in-progress path entirely -- nothing worth keeping (an + empty or single-point path isn't a usable shape). +*/ +void DiagramEventAddPath::cancelPath() +{ + if (m_shape_item) + { + m_diagram->removeItem(m_shape_item); + delete m_shape_item; + m_shape_item = nullptr; + } + m_nodes.clear(); + m_dragging_node = -1; +} + +/** + @brief DiagramEventAddPath::nearFirstNode + m_shape_item's pos()/transform() stay at their identity defaults for + its entire construction here -- nothing during drawing ever touches + them -- so the first node's anchor, stored in local coordinates, is + directly comparable to a scene position without any mapping. +*/ +bool DiagramEventAddPath::nearFirstNode(const QPointF &scenePos) const +{ + if (m_nodes.isEmpty()) + return false; + return QLineF(m_nodes.first().anchor, scenePos).length() <= CLOSE_THRESHOLD; +} + +/** + @brief DiagramEventAddPath::updateHelpCross + Same crosshair guide as every other shape tool (see + DiagramEventAddShape::updateHelpCross) -- duplicated rather than + shared, since the two classes don't otherwise share a common base + beyond DiagramEventInterface. +*/ +void DiagramEventAddPath::updateHelpCross(const QPointF &p) +{ + if (!m_help_horiz || !m_help_verti) + { + QPen pen; + pen.setWidthF(0.4); + pen.setCosmetic(true); + pen.setColor(Diagram::background_color == Qt::darkGray ? Qt::lightGray : Qt::darkGray); + + QRectF rect = m_diagram->border_and_titleblock.insideBorderRect(); + + if (!m_help_horiz) + { + m_help_horiz = new QGraphicsLineItem(rect.topLeft().x(), 0, rect.topRight().x(), 0); + m_help_horiz->setPen(pen); + m_diagram->addItem(m_help_horiz); + } + + if (!m_help_verti) + { + m_help_verti = new QGraphicsLineItem(0, rect.topLeft().y(), 0, rect.bottomLeft().y()); + m_help_verti->setPen(pen); + m_diagram->addItem(m_help_verti); + } + } + + QPointF point = Diagram::snapToGrid(p); + + m_help_horiz->setY(point.y()); + m_help_verti->setX(point.x()); +} diff --git a/sources/diagramevent/diagrameventaddpath.h b/sources/diagramevent/diagrameventaddpath.h new file mode 100644 index 000000000..e93ac3ac9 --- /dev/null +++ b/sources/diagramevent/diagrameventaddpath.h @@ -0,0 +1,81 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#ifndef DIAGRAMEVENTADDPATH_H +#define DIAGRAMEVENTADDPATH_H + +#include "../qetgraphicsitem/qetshapeitem.h" +#include "diagrameventinterface.h" + +class QGraphicsLineItem; + +/** + @brief The DiagramEventAddPath class + Pen tool: interactively draw a new Path (Bezier) shape, following the + same vocabulary every vector editor's pen tool uses: + - click places a Corner node; + - press-drag-release places a Smooth node, with the drag defining a + pair of mirrored handles (same convention as + QetShapeItem::dragPathControlHandle's "Smooth" mirroring); + - clicking back on the first node closes the path; + - double-click, Enter, or Escape (once 2+ nodes exist) finishes it + open; + - right-click steps back one node; + - right-click or Escape with nothing placed yet cancels the tool. + While running, m_nodes always carries one extra "preview" node at the + end, tracking the mouse so a live rubber-band segment is always + visible -- confirmedNodeCount() excludes it; every public gesture + handler is responsible for stripping it before treating the list as + "the path so far" (see finishPath(), which does this once for every + finishing gesture). +*/ +class DiagramEventAddPath : public DiagramEventInterface +{ + Q_OBJECT + + public: + DiagramEventAddPath(Diagram *diagram); + ~DiagramEventAddPath() override; + + void mousePressEvent (QGraphicsSceneMouseEvent *event) override; + void mouseMoveEvent (QGraphicsSceneMouseEvent *event) override; + void mouseReleaseEvent (QGraphicsSceneMouseEvent *event) override; + void mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event) override; + void keyPressEvent (QKeyEvent *event) override; + void init() override; + + private: + void updateHelpCross (const QPointF &p); + void showHint () const; + void finishPath (bool closed); + void cancelPath (); + bool nearFirstNode (const QPointF &scenePos) const; + int confirmedNodeCount () const; // m_nodes always carries one trailing "preview" node while running; this excludes it + QPointF snapped (const QPointF &scenePos, Qt::KeyboardModifiers mods) const; + + QetShapeItem *m_shape_item; + QVector<QetShapeItem::PathNode> m_nodes; + int m_dragging_node = -1; + QGraphicsLineItem *m_help_horiz, *m_help_verti; + + // Scene units within which a click on an existing path is + // treated as "on the first node" and closes the shape, rather + // than adding yet another node right next to it. + static constexpr qreal CLOSE_THRESHOLD = 12.0; +}; + +#endif // DIAGRAMEVENTADDPATH_H diff --git a/sources/diagramevent/diagrameventaddshape.cpp b/sources/diagramevent/diagrameventaddshape.cpp index 0ab945266..d19669e76 100644 --- a/sources/diagramevent/diagrameventaddshape.cpp +++ b/sources/diagramevent/diagrameventaddshape.cpp @@ -19,8 +19,16 @@ #include "../diagram.h" #include "../lastusedstyle.h" +#include "../qetapp.h" +#include "../qetdiagrameditor.h" #include "../undocommand/addgraphicsobjectcommand.h" +#include <QGraphicsEllipseItem> +#include <QGuiApplication> +#include <QKeyEvent> +#include <QStatusBar> +#include <QTimer> + /** @brief DiagramEventAddShape::DiagramEventAddShape Default constructor @@ -36,6 +44,18 @@ DiagramEventAddShape::DiagramEventAddShape(Diagram *diagram, QetShapeItem::Shape { m_running = true; init(); + // Deferred to the next event-loop iteration, not shown immediately: + // Diagram::setEventInterface() destroys whatever tool was + // previously active *after* this constructor returns, and that + // previous tool's own destructor clears the status bar (see + // ~DiagramEventAddShape() below) -- an immediate show here would + // just get wiped out moments later by that cleanup. Letting the old + // tool's teardown finish first, then showing this one's message, is + // the same fix already used for the tooltip-flicker issue in + // QetShapeItem::refreshInteractionHints(), applied to the same + // class of "something later in the same call chain undoes what I + // just did" ordering problem. + QTimer::singleShot(0, this, [this]() { updateCreationHint(); }); } /** @@ -50,11 +70,123 @@ DiagramEventAddShape::~DiagramEventAddShape() } delete m_help_horiz; delete m_help_verti; + delete m_center_marker; + + if (m_diagram && !m_diagram->views().isEmpty()) + { + if (auto *editor = QETApp::diagramEditorAncestorOf(m_diagram->views().constFirst())) + editor->statusBar()->clearMessage(); + } foreach (QGraphicsView *v, m_diagram->views()) v->setContextMenuPolicy(Qt::DefaultContextMenu); } +/** + @brief DiagramEventAddShape::applyPosition + Applies a drag/click position to the in-progress shape, honouring two + modifiers that mirror how the very same shape can already be edited + afterward, once placed: + - Ctrl, for Rectangle/Ellipse only: the first click becomes the + shape's *center* rather than a corner, growing symmetrically as + the cursor moves away from it -- the same meaning Ctrl already + has on a Resize handle (anchor at center). Deliberately not + offered for Line: unlike the Rectangle/Ellipse case, there's no + established convention for "a line grows symmetrically from its + middle" to justify it by, so Ctrl for Line means only free + positioning (see the plain grid-snap check above), nothing more. + - Shift, for Rectangle/Ellipse only: forces the bounding box square + (so Ellipse becomes a true circle), using whichever of the two + dragged dimensions is currently larger and mirroring that onto + the other, preserving the direction the user is actually + dragging in. + Both can combine (Ctrl+Shift: a centered square/circle). Whether or + not Ctrl is currently held, the non-anchored branch always rebuilds + from m_anchor_point rather than nudging the existing rect/line -- + otherwise, if Ctrl had been held earlier in the same drag (moving the + shape's own first point to a mirrored position), releasing it would + leave that point stuck there instead of actually restoring it. +*/ +void DiagramEventAddShape::applyPosition(const QPointF &pos, Qt::KeyboardModifiers mods) +{ + if (!m_shape_item) + return; + + if (m_shape_type == QetShapeItem::Polygon) + { + // setP2() has its own dedicated Polygon handling: it moves the + // *last* vertex in place rather than setting a second point, + // which is exactly the live "next segment follows the mouse" + // preview -- the same idea DiagramEventAddPath's trailing + // preview node gives the pen tool. No Ctrl/Shift modifiers apply + // here (those are Rectangle/Ellipse/Line-specific below), so + // this is a direct, unconditional call. + m_shape_item->setP2(pos); + return; + } + + // m_center_anchored is decided once, in mousePressEvent, not + // re-checked here on every call -- re-checking it live meant + // releasing Ctrl mid-drag (something you'd naturally do the moment + // your hand gets tired holding it, long before you're done resizing) + // silently snapped the shape back to corner-anchored, discarding + // what felt like an already-made decision. Deciding it once at the + // first click matches "I held Ctrl when I clicked, so this shape is + // centered" -- a single, predictable rule instead of a live toggle. + QPointF target = pos; + + if ((mods & Qt::ShiftModifier) + && (m_shape_type == QetShapeItem::Rectangle || m_shape_type == QetShapeItem::Ellipse)) + { + const QPointF ref = m_anchor_point; + const qreal dx = target.x() - ref.x(); + const qreal dy = target.y() - ref.y(); + const qreal size = qMax(qAbs(dx), qAbs(dy)); + target.setX(ref.x() + (dx < 0 ? -size : size)); + target.setY(ref.y() + (dy < 0 ? -size : size)); + } + + if (m_center_anchored) + { + const QPointF mirrored = 2 * m_anchor_point - target; + m_shape_item->setRect(QRectF(mirrored, target)); + } + else + { + if (m_shape_type == QetShapeItem::Line) + m_shape_item->setLine(QLineF(m_anchor_point, target)); + else + m_shape_item->setRect(QRectF(m_anchor_point, target)); + } +} + +/** + @brief DiagramEventAddShape::showCenterMarker + Small, filled marker at the anchor point, shown only while Ctrl- + anchoring is actually in effect right now (see applyPosition()) -- + doubling as live confirmation that it is, rather than leaving the + user to infer it purely from how the shape happens to be growing. +*/ +void DiagramEventAddShape::showCenterMarker(const QPointF &scenePos) +{ + if (!m_center_marker) + { + m_center_marker = new QGraphicsEllipseItem(-4, -4, 8, 8); + QPen pen(Qt::red); + pen.setCosmetic(true); + m_center_marker->setPen(pen); + m_center_marker->setBrush(Qt::red); + m_diagram->addItem(m_center_marker); + } + m_center_marker->setPos(scenePos); +} + +void DiagramEventAddShape::hideCenterMarker() +{ + delete m_center_marker; + m_center_marker = nullptr; +} + /** @brief DiagramEventAddShape::mousePressEvent Action when mouse is pressed @@ -67,7 +199,14 @@ void DiagramEventAddShape::mousePressEvent(QGraphicsSceneMouseEvent *event) } QPointF pos = event->scenePos(); - if (event->modifiers() != Qt::ControlModifier) { + // A bitwise flag check, not exact equality: modifiers() == Ctrl + // alone fails the moment any other key (Shift for the square/circle + // lock, or an incidental platform flag) is also held, silently + // falling through to snapToGrid() even though Ctrl is held -- + // exactly what made Ctrl+Shift together feel "frozen" (both grid- + // snapped *and* square-locked, quantizing to whichever is coarser) + // and made "Ctrl = free positioning" not actually hold up. + if (!(event->modifiers() & Qt::ControlModifier)) { pos = Diagram::snapToGrid(pos); } @@ -78,6 +217,15 @@ void DiagramEventAddShape::mousePressEvent(QGraphicsSceneMouseEvent *event) if (!m_shape_item) { m_shape_item = new QetShapeItem(pos, pos, m_shape_type); + m_anchor_point = pos; + // Decided once, here, rather than re-checked on every mouse + // move for the rest of the drag -- see applyPosition()'s doc + // comment for why continuous re-checking made releasing Ctrl + // mid-drag feel like a bug rather than a deliberate choice. + m_center_anchored = (event->modifiers() & Qt::ControlModifier) + && (m_shape_type == QetShapeItem::Rectangle || m_shape_type == QetShapeItem::Ellipse); + if (m_center_anchored) + showCenterMarker(m_anchor_point); //Start from whatever pen/brush was last applied this //session, rather than always the hardcoded default. if (LastUsedStyle::hasShapePen()) { @@ -87,6 +235,7 @@ void DiagramEventAddShape::mousePressEvent(QGraphicsSceneMouseEvent *event) m_shape_item->setBrush(LastUsedStyle::shapeBrush()); } m_diagram->addItem (m_shape_item); + updateCreationHint(); event->setAccepted(true); return; } @@ -94,12 +243,14 @@ void DiagramEventAddShape::mousePressEvent(QGraphicsSceneMouseEvent *event) //If current item isn't a polyline, add it with an undo command if (m_shape_type != QetShapeItem::Polygon) { - m_shape_item->setP2 (pos); + applyPosition(pos, event->modifiers()); if (m_shape_item->shapeType() == QetShapeItem::Rectangle || m_shape_item->shapeType() == QetShapeItem::Ellipse) { m_shape_item->setRect(m_shape_item->rect().normalized()); } m_diagram->undoStack().push (new AddGraphicsObjectCommand(m_shape_item, m_diagram)); m_shape_item = nullptr; //< set to nullptr for create new shape at next left clic + hideCenterMarker(); + updateCreationHint(); } //Else add a new point to polyline else @@ -125,18 +276,76 @@ void DiagramEventAddShape::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { updateHelpCross(event->scenePos()); + // Re-asserted on every move, not just once at activation: Qt's own + // built-in "show an action's statusTip on hover" has its own + // internal "restore whatever was there before" logic for when the + // hover ends. Since our message is shown *during* that same hover + // session (the user is still over the toolbar icon when the + // deferred constructor-time call fires), Qt's hover-tracking has no + // idea we changed the status bar in the meantime -- the moment the + // mouse leaves the icon for the canvas, it "restores" to whatever it + // remembers being there before its own tip started, which is stale + // and empty, silently overwriting ours. Re-showing it here, on every + // move within the canvas, simply outlasts that one-time restore. + updateCreationHint(); + if (m_shape_item && event->buttons() == Qt::NoButton) { + m_last_mouse_scene_pos = event->scenePos(); // raw, before snapping -- see reapplyLastPosition() + QPointF pos = event->scenePos(); - if (event->modifiers() != Qt::ControlModifier) { + if (!(event->modifiers() & Qt::ControlModifier)) { pos = Diagram::snapToGrid(pos); } - m_shape_item->setP2 (pos); + applyPosition(pos, event->modifiers()); event->setAccepted(true); } } +/** + @brief DiagramEventAddShape::keyPressEvent / keyReleaseEvent + Pressing or releasing Shift (the square/circle lock) does nothing + visible on its own -- applyPosition() only ever runs from + mouseMoveEvent, so without this, a keyboard-only change just sits + there until the next, often incidental, pixel of mouse movement + brings the shape in line with it. That's exactly what looked like a + freeze: holding Shift while the mouse is genuinely still produces no + visible change (correctly -- nothing has moved), and it only + "unsticks" once the mouse moves again, which released keys tend to + coincide with purely by hand tremor, not because releasing itself + did anything. Re-running the last known mouse position through + applyPosition() here makes the key press or release itself the + trigger, giving immediate feedback instead of waiting on chance. +*/ +void DiagramEventAddShape::keyPressEvent(QKeyEvent *event) +{ + reapplyLastPosition(event); +} + +void DiagramEventAddShape::keyReleaseEvent(QKeyEvent *event) +{ + reapplyLastPosition(event); +} + +void DiagramEventAddShape::reapplyLastPosition(QKeyEvent *event) +{ + if (!m_shape_item || (event->key() != Qt::Key_Shift && event->key() != Qt::Key_Control)) + return; + + // A fresh, global query, not event->modifiers(): for a press/release + // of a modifier key itself, whether that key is already reflected in + // the key event's own modifiers() is ambiguous and platform- + // dependent -- the same reason Diagram::snapToGrid() queries this + // directly rather than trusting a passed-in modifiers() value. + const Qt::KeyboardModifiers mods = QGuiApplication::keyboardModifiers(); + QPointF pos = m_last_mouse_scene_pos; + if (!(mods & Qt::ControlModifier)) + pos = Diagram::snapToGrid(pos); + + applyPosition(pos, mods); +} + /** @brief DiagramEventAddShape::mouseReleaseEvent Action when mouse button is released @@ -155,7 +364,7 @@ void DiagramEventAddShape::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) m_shape_item->removePoints(); QPointF pos = event->scenePos(); - if (event->modifiers() != Qt::ControlModifier) + if (!(event->modifiers() & Qt::ControlModifier)) pos = Diagram::snapToGrid(pos); m_shape_item->setP2(pos); //Set the new last point under the cursor @@ -167,6 +376,8 @@ void DiagramEventAddShape::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) m_diagram->removeItem(m_shape_item); delete m_shape_item; m_shape_item = nullptr; + hideCenterMarker(); + updateCreationHint(); event->setAccepted(true); return; } @@ -203,6 +414,8 @@ void DiagramEventAddShape::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event } m_diagram->undoStack().push (new AddGraphicsObjectCommand(m_shape_item, m_diagram)); m_shape_item = nullptr; //< set to nullptr for create new shape at next left clic + hideCenterMarker(); + updateCreationHint(); event->setAccepted(true); } } @@ -213,6 +426,59 @@ void DiagramEventAddShape::init() v->setContextMenuPolicy(Qt::NoContextMenu); } +/** + @brief DiagramEventAddShape::updateCreationHint + Shows whichever of beforeClickHint()/afterClickHint() matches the + current phase -- there was previously either no message at all + (Line/Rectangle/Ellipse) or a single static one that never changed + regardless of progress (Polygon, set externally in + QETDiagramEditor::addItemGroupTriggered()); this replaces both with + one phase-aware message per shape type, managed by the tool itself. +*/ +void DiagramEventAddShape::updateCreationHint() const +{ + if (!m_diagram || m_diagram->views().isEmpty()) + return; + if (auto *editor = QETApp::diagramEditorAncestorOf(m_diagram->views().constFirst())) + editor->statusBar()->showMessage(m_shape_item ? afterClickHint() : beforeClickHint()); +} + +QString DiagramEventAddShape::beforeClickHint() const +{ + switch (m_shape_type) + { + case QetShapeItem::Line: + return tr("Clic gauche : positionner le point de départ (Ctrl = position libre)"); + case QetShapeItem::Rectangle: + case QetShapeItem::Ellipse: + return tr("Clic gauche : positionner le premier coin (Ctrl = point central, position libre)"); + case QetShapeItem::Polygon: + return tr("Clic gauche : positionner le premier point (Ctrl = position libre)"); + default: + return QString(); + } +} + +QString DiagramEventAddShape::afterClickHint() const +{ + switch (m_shape_type) + { + case QetShapeItem::Line: + return tr("Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler"); + case QetShapeItem::Rectangle: + return tr("Clic gauche : positionner le coin opposé (Maj = carré, " + "Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler"); + case QetShapeItem::Ellipse: + return tr("Clic gauche : positionner le coin opposé (Maj = cercle, " + "Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler"); + case QetShapeItem::Polygon: + return tr("Clic gauche : point suivant ; double-clic ou Entrée : terminer ; " + "clic droit : annuler le dernier point"); + default: + return QString(); + } +} + /** @brief DiagramEventAddShape::updateHelpCross Create and update the position of the cross to help user for draw new shape diff --git a/sources/diagramevent/diagrameventaddshape.h b/sources/diagramevent/diagrameventaddshape.h index 60a66615a..7999897f6 100644 --- a/sources/diagramevent/diagrameventaddshape.h +++ b/sources/diagramevent/diagrameventaddshape.h @@ -21,6 +21,8 @@ #include "../qetgraphicsitem/qetshapeitem.h" #include "diagrameventinterface.h" +class QGraphicsEllipseItem; + /** @brief The DiagramEventAddShape class This event manage the creation of a shape. @@ -37,15 +39,28 @@ class DiagramEventAddShape : public DiagramEventInterface void mouseMoveEvent (QGraphicsSceneMouseEvent *event) override; void mouseReleaseEvent (QGraphicsSceneMouseEvent *event) override; void mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event) override; + void keyPressEvent (QKeyEvent *event) override; + void keyReleaseEvent (QKeyEvent *event) override; void init() override; private: void updateHelpCross (const QPointF &p); + void applyPosition (const QPointF &pos, Qt::KeyboardModifiers mods); + void updateCreationHint () const; + QString beforeClickHint () const; + QString afterClickHint () const; + void showCenterMarker (const QPointF &scenePos); + void hideCenterMarker (); + void reapplyLastPosition (QKeyEvent *event); protected: QetShapeItem::ShapeType m_shape_type; QetShapeItem *m_shape_item; QGraphicsLineItem *m_help_horiz, *m_help_verti; + QPointF m_anchor_point; // the shape's first-click point -- meaningful once m_shape_item exists + QGraphicsEllipseItem *m_center_marker = nullptr; // shown only while Ctrl-anchoring is actually in effect, so it doubles as confirmation that it is + bool m_center_anchored = false; // decided once, at the first click -- see applyPosition()'s doc comment for why + QPointF m_last_mouse_scene_pos; // raw, unsnapped -- lets a modifier-only change re-snap correctly when reapplied }; #endif // DIAGRAMEVENTADDSHAPE_H diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp index a17412a72..566b6f5c6 100644 --- a/sources/qetdiagrameditor.cpp +++ b/sources/qetdiagrameditor.cpp @@ -27,6 +27,7 @@ #include "diagramevent/diagrameventaddpdf.h" #endif #include "diagramevent/diagrameventaddshape.h" +#include "diagramevent/diagrameventaddpath.h" #include "diagramevent/diagrameventaddtext.h" #include "diagramview.h" #include "elementspanelwidget.h" @@ -60,6 +61,7 @@ #include <QDateTime> #include <QDebug> #include <QDir> +#include <QTimer> #ifdef BUILD_WITHOUT_KF # include "ui/nokde/kautosavefile.h" #else @@ -718,6 +720,19 @@ void QETDiagramEditor::setUpActions() connect(&m_zoom_actions_group, &QActionGroup::triggered, this, &QETDiagramEditor::zoomGroupTriggered); //Adding action (add text, image, shape...) + // Exclusive (the default) prevents the active action from ever being + // unchecked by clicking it again -- Qt only lets you switch to a + // different one. That's exactly why clicking an already-active + // tool's own icon never actually deactivated it: confirmed by + // logging every addItemGroupTriggered() call and finding + // isChecked()==true on *every* click, including the one meant to + // turn the tool off -- the click-handling code's own "was this an + // uncheck?" check was correct, its precondition just could never + // occur. ExclusiveOptional allows exactly one more transition: + // clicking the currently-checked action unchecks it, leaving none + // checked, which is required for "click the active tool to turn it + // off" to mean anything at the QAction level at all. + m_add_item_actions_group.setExclusionPolicy(QActionGroup::ExclusionPolicy::ExclusiveOptional); QAction *add_text = m_add_item_actions_group.addAction(QET::Icons::PartTextField, tr("Ajouter un champ de texte")); QAction *add_image = m_add_item_actions_group.addAction(QET::Icons::adding_image, tr("Ajouter une image")); #ifdef QET_HAS_QTPDF @@ -727,6 +742,7 @@ void QETDiagramEditor::setUpActions() QAction *add_rectangle = m_add_item_actions_group.addAction(QET::Icons::PartRectangle, tr("Ajouter un rectangle")); QAction *add_ellipse = m_add_item_actions_group.addAction(QET::Icons::PartEllipse, tr("Ajouter une ellipse")); QAction *add_polyline = m_add_item_actions_group.addAction(QET::Icons::PartPolygon, tr("Ajouter une polyligne")); + QAction *add_path = m_add_item_actions_group.addAction(QET::Icons::PartBezier, tr("Ajouter une courbe")); QAction *add_terminal_strip = m_add_item_actions_group.addAction(QET::Icons::TerminalStrip, tr("Ajouter un plan de bornes")); add_text ->setStatusTip(tr("Ajoute un champ de texte sur le folio actuel")); @@ -738,6 +754,7 @@ void QETDiagramEditor::setUpActions() add_rectangle->setStatusTip(tr("Ajoute un rectangle sur le folio actuel")); add_ellipse ->setStatusTip(tr("Ajoute une ellipse sur le folio actuel")); add_polyline ->setStatusTip(tr("Ajoute une polyligne sur le folio actuel")); + add_path ->setStatusTip(tr("Ajoute une courbe de Bézier sur le folio actuel")); add_terminal_strip->setStatusTip(tr("Ajoute un plan de bornier sur le folio actuel")); add_text ->setData(QStringLiteral("text")); @@ -749,6 +766,7 @@ void QETDiagramEditor::setUpActions() add_rectangle->setData(QStringLiteral("rectangle")); add_ellipse ->setData(QStringLiteral("ellipse")); add_polyline ->setData(QStringLiteral("polyline")); + add_path ->setData(QStringLiteral("path")); add_terminal_strip->setData(QStringLiteral("terminal_strip")); add_text->setCheckable(true); @@ -756,6 +774,7 @@ void QETDiagramEditor::setUpActions() add_rectangle->setCheckable(true); add_ellipse->setCheckable(true); add_polyline->setCheckable(true); + add_path->setCheckable(true); connect(&m_add_item_actions_group, &QActionGroup::triggered, this, &QETDiagramEditor::addItemGroupTriggered); @@ -1555,6 +1574,27 @@ void QETDiagramEditor::addItemGroupTriggered(QAction *action) if (Q_UNLIKELY (!currentDiagramView() || !currentDiagramView()->diagram() || value.isEmpty())) return; Diagram *d = currentDiagramView()->diagram(); + + // This action group allows deselecting the currently-active tool by + // clicking its own icon again, not just switching between tools -- + // that click still fires this slot (QActionGroup::triggered fires on + // every click in the group, checked-state-changing or not), so + // without this check it would unconditionally construct *another* + // instance of the same tool and reactivate it, leaving the tool + // fully active in the canvas while its own toolbar button shows + // unchecked -- exactly backwards from what the click was for. + // Scoped to checkable actions specifically: image/pdf/terminal_strip + // are one-shot actions (pick a file, open a dialog) with no + // persistent "active tool" state at all, and aren't even checkable + // -- isChecked() on them is always false, so without this guard + // they'd hit the branch above on every single click and never + // reach their own handling below. + if (action->isCheckable() && !action->isChecked()) + { + d->clearEventInterface(); + return; + } + DiagramEventInterface *diagram_event = nullptr; if (value == "line") @@ -1564,12 +1604,10 @@ void QETDiagramEditor::addItemGroupTriggered(QAction *action) else if (value == "ellipse") diagram_event = new DiagramEventAddShape (d, QetShapeItem::Ellipse); else if (value == "polyline") - { diagram_event = new DiagramEventAddShape (d, QetShapeItem::Polygon); - statusBar()-> showMessage(tr("Double-click pour terminer la forme, Click droit pour annuler le dernier point")); - connect(diagram_event, &DiagramEventInterface::destroyed, [this]() { - statusBar()->clearMessage(); - }); + else if (value == "path") + { + diagram_event = new DiagramEventAddPath (d); } else if (value == "image") { @@ -1612,6 +1650,22 @@ void QETDiagramEditor::addItemGroupTriggered(QAction *action) { d->setEventInterface(diagram_event); connect(diagram_event, &DiagramEventInterface::destroyed, [action]() {action->setChecked(false);}); + // Defensive: on this style/theme, the toolbar button bound to an + // exclusive-group action doesn't reliably repaint its checked + // appearance after the group briefly had *no* action checked at + // all (the gap between unchecking one tool and checking one + // again, even the same one) -- confirmed by tracing a real + // recording frame by frame: the status bar correctly showed this + // tool's "before first click" hint (which can only appear from + // inside a freshly-constructed tool's own constructor, so the + // action's checked state and the tool's activation were both + // genuinely correct) while the button itself stayed visually + // unchecked for a sustained period. Forcing an explicit repaint + // here makes the button's appearance match its actual state + // regardless of whether Qt's own change notification fired + // correctly. + if (QWidget *button = m_add_item_tool_bar->widgetForAction(action)) + button->update(); } } diff --git a/sources/qetgraphicsitem/diagramimageitem.cpp b/sources/qetgraphicsitem/diagramimageitem.cpp index 8a7649399..f6fe4bf72 100644 --- a/sources/qetgraphicsitem/diagramimageitem.cpp +++ b/sources/qetgraphicsitem/diagramimageitem.cpp @@ -18,8 +18,23 @@ #include "diagramimageitem.h" #include "../PropertiesEditor/propertieseditordialog.h" +#include "../QPropertyUndoCommand/qpropertyundocommand.h" #include "../diagram.h" +#include "../diagramview.h" +#include "../qet.h" +#include "../qetapp.h" +#include "../qetdiagrameditor.h" #include "../ui/imagepropertieswidget.h" +#include "../ui/imagecropdialog.h" +#include "../ui/imagetransparentcolordialog.h" +#include "../utils/qetutils.h" +#include "../QetGraphicsItemModeler/qetgraphicshandleritem.h" + +#include <QAction> +#include <QFileDialog> +#include <QGraphicsSceneContextMenuEvent> +#include <QMenu> +#include <QMessageBox> /** @brief DiagramImageItem::DiagramImageItem @@ -30,6 +45,7 @@ DiagramImageItem::DiagramImageItem(QetGraphicsItem *parent_item): QetGraphicsItem(parent_item) { setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemSendsGeometryChanges); + setAcceptHoverEvents(true); } /** @@ -40,10 +56,18 @@ DiagramImageItem::DiagramImageItem(QetGraphicsItem *parent_item): */ DiagramImageItem::DiagramImageItem(const QPixmap &pixmap, QetGraphicsItem *parent_item): QetGraphicsItem(parent_item), - pixmap_(pixmap) + pixmap_(pixmap), + m_base_pixmap(pixmap), + m_crop_rect(pixmap.rect()) { - setTransformOriginPoint(boundingRect().center()); + // m_transform.toMatrix(), not QGraphicsItem::setRotation()/setScale(): + // those are a single uniform scale() float, which is exactly why an + // image could never break its own aspect ratio before this class + // gained proper independent scaleX/scaleY. + m_transform.pivot = boundingRect().center(); + setTransform(m_transform.toMatrix()); setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemSendsGeometryChanges); + setAcceptHoverEvents(true); } /** @@ -52,6 +76,8 @@ DiagramImageItem::DiagramImageItem(const QPixmap &pixmap, QetGraphicsItem *paren */ DiagramImageItem::~DiagramImageItem() { + if (!m_handler_vector.isEmpty()) + qDeleteAll(m_handler_vector); } /** @@ -98,8 +124,963 @@ void DiagramImageItem::editProperty() @param pixmap the new pixmap */ void DiagramImageItem::setPixmap(const QPixmap &pixmap) { + // Only ever mattered once setPixmap() could be called on an + // already-placed item with a differently-sized replacement (see + // replaceImage()) -- previously this only ran from the constructor, + // before the item existed in any scene, where there was nothing yet + // to invalidate. Without this, a same-session replace to a + // different-sized image would leave the scene's bounding-rect cache + // stale, the exact class of bug already fixed multiple times this + // session for shapes. + // + // Deliberately does NOT touch m_transform.pivot/pos() here, even + // though a differently-sized pixmap generally means the old pivot + // (a bounding-rect-relative point) no longer means the same thing: + // crop() and replaceImage(), the only two callers that ever change + // the pixmap's size, each have their own specific idea of what + // should happen to position and pivot when they do (see their own + // comments) -- a single generic rule here would fight with + // whichever of them actually needs something more specific. + prepareGeometryChange(); pixmap_ = pixmap; - setTransformOriginPoint(boundingRect().center()); + emit pixmapChanged(); +} + +/** + @brief DiagramImageItem::setScaleFactorX / setScaleFactorY / setRotationAngle + Matching QetShapeItem's own setters for the identical fields -- + same pattern, same reasoning: change the one field, rebuild the + matrix, notify. No pivot or position compensation needed here, + unlike setPivot() below, since neither scale nor rotation moves the + pivot itself. +*/ +void DiagramImageItem::setScaleFactorX(qreal factor) +{ + if (qFuzzyCompare(m_transform.scaleX, factor)) return; + prepareGeometryChange(); + m_transform.scaleX = factor; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void DiagramImageItem::setScaleFactorY(qreal factor) +{ + if (qFuzzyCompare(m_transform.scaleY, factor)) return; + prepareGeometryChange(); + m_transform.scaleY = factor; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void DiagramImageItem::setRotationAngle(qreal angle) +{ + if (qFuzzyCompare(m_transform.rotation, angle)) return; + prepareGeometryChange(); + m_transform.rotation = angle; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void DiagramImageItem::setSkewX(qreal skew) +{ + if (qFuzzyCompare(m_transform.skewX, skew)) return; + prepareGeometryChange(); + m_transform.skewX = skew; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void DiagramImageItem::setSkewY(qreal skew) +{ + if (qFuzzyCompare(m_transform.skewY, skew)) return; + prepareGeometryChange(); + m_transform.skewY = skew; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +/** + @brief DiagramImageItem::setPivot + Unlike scale/rotation, moving the pivot alone WOULD visibly shift + the image on screen, since the pivot is baked directly into the + transform matrix -- compensatedPositionForNewPivot() (already + proven correct for QetShapeItem's identical need) solves for + whatever pos() keeps the image exactly where it already was, so + only the *handle* moves, not the picture underneath it. +*/ +void DiagramImageItem::setPivot(const QPointF &newPivot) +{ + if (m_transform.pivot == newPivot) return; + const QPointF newPos = compensatedPositionForNewPivot(pos(), m_transform.pivot, newPivot, m_transform.linearPart()); + prepareGeometryChange(); + m_transform.pivot = newPivot; + // Verified numerically that the underlying math keeps the image + // exactly in place when the pivot moves -- this guard is about a + // DIFFERENT problem: setPos() and setTransform() are two separate + // QGraphicsItem operations, each independently triggering + // itemChange(), so without this, repositionHandles() (and, + // visibly, a render) could happen using the new pos() but the + // still-old transform (or vice versa) in the moment between the + // two calls -- a real, if brief, wobble, not a calculation error. + // QetShapeItem's own setPivot() already needed the identical fix + // for the identical reason. + m_deferHandleReposition = true; + // QGraphicsObject::setPos(), not the plain setPos() this class + // would otherwise inherit: QetGraphicsItem overrides setPos() to + // snap to the diagram's grid, which is exactly right for a user + // dragging the whole image around, but silently corrupts this + // specific, exactly-computed compensation -- rounding it to the + // nearest grid point defeats the entire point of computing an + // exact value in the first place, and was the actual cause of the + // "picture drifts slightly" symptom (invisible at scale 1 with no + // rotation, since the compensation is a no-op there regardless). + QGraphicsObject::setPos(newPos); + setTransform(m_transform.toMatrix()); + m_deferHandleReposition = false; + repositionHandles(); + emit transformChanged(); +} + +/** + @brief DiagramImageItem::setPivotRaw + Sets m_transform.pivot directly, with NO position compensation at + all -- deliberately, unlike setPivot() above. Exists solely for + crop()'s own undo chain (see the Q_PROPERTY declaration's comment + for why): crop() already computes the fully correct pos() itself, + accounting for the crop, and pushes that as its own independent + undo step, so compensating pos() *again* here would silently + corrupt it back to a wrong value the moment this step replays. + Never call this expecting the image to stay visually in place on + its own -- it won't; the caller is responsible for that. +*/ +void DiagramImageItem::setPivotRaw(const QPointF &newPivot) +{ + if (m_transform.pivot == newPivot) return; + prepareGeometryChange(); + m_transform.pivot = newPivot; + setTransform(m_transform.toMatrix()); + repositionHandles(); + emit transformChanged(); +} + +/** + @brief DiagramImageItem::resetPivotToBoundingRectCenter + Used after a resize drag ends (see handlerMouseReleaseEvent()) -- + NOT after crop() or replaceImage(), which each compute their own, + more specific position handling instead (see setPixmap()'s comment + for why a single generic rule doesn't fit both of those). +*/ +void DiagramImageItem::resetPivotToBoundingRectCenter() +{ + m_pivotIsCustom = false; + setPivot(boundingRect().center()); +} + +namespace { + // Local-space (natural, unscaled pixmap size) position of each of + // the 8 resize handles. Indices: 0=TL 1=TM 2=TR 3=ML 4=MR 5=BL + // 6=BM 7=BR -- arbitrary but fixed, matched by oppositeHandleIndex() + // and adjustsX()/adjustsY() below. + QPointF handleNaturalPosition(int index, qreal w, qreal h) + { + switch (index) + { + case 0: return QPointF(0, 0); + case 1: return QPointF(w / 2, 0); + case 2: return QPointF(w, 0); + case 3: return QPointF(0, h / 2); + case 4: return QPointF(w, h / 2); + case 5: return QPointF(0, h); + case 6: return QPointF(w / 2, h); + case 7: return QPointF(w, h); + } + return QPointF(); + } + + int oppositeHandleIndex(int index) + { + static const int opposite[8] = {7, 6, 5, 4, 3, 2, 1, 0}; + return opposite[index]; + } + + // Corners adjust both axes; edge midpoints adjust only the axis + // perpendicular to their own edge. + bool adjustsX(int index) { return index != 1 && index != 6; } + bool adjustsY(int index) { return index != 3 && index != 4; } +} + +/** + @brief DiagramImageItem::cornerPosition + Matches QetShapeItem::cornerPoint()'s own slot convention exactly + (0=TL 1=TR 2=BR 3=BL), so the rotate math ported from there (see + dragRotateHandle()) lines up without needing its own re-derivation. +*/ +QPointF DiagramImageItem::cornerPosition(int cornerIndex, qreal w, qreal h) +{ + switch (cornerIndex & 3) + { + case 0: return QPointF(0, 0); + case 1: return QPointF(w, 0); + case 2: return QPointF(w, h); + default: return QPointF(0, h); + } +} + +/** + @brief DiagramImageItem::edgeMidpointPosition + Matches QetShapeItem::edgeMidpoint()'s own slot convention exactly + (0=N 1=E 2=S 3=W), for the same reason as cornerPosition() above. +*/ +QPointF DiagramImageItem::edgeMidpointPosition(int edgeIndex, qreal w, qreal h) +{ + switch (edgeIndex & 3) + { + case 0: return QPointF(w / 2, 0); + case 1: return QPointF(w, h / 2); + case 2: return QPointF(w / 2, h); + default: return QPointF(0, h / 2); + } +} + +/** + @brief DiagramImageItem::scaleOnlyOffset / scaleAndShearOffset + Verbatim ports of QetShapeItem's own identically-named helpers (see + their definitions there for the derivation) -- the offset of a local + point from the pivot, with scale (and, for the second, shear too) + applied but rotation deliberately left out. Used by + dragRotateHandle()/dragSkewHandle() to solve for rotation/skew + directly rather than through mapFromScene(), which would divide out + the very value being solved for. +*/ +QPointF DiagramImageItem::scaleOnlyOffset(const QPointF &localPoint) const +{ + const QPointF offset = localPoint - m_transform.pivot; + return QPointF(offset.x() * m_transform.scaleX, offset.y() * m_transform.scaleY); +} + +QPointF DiagramImageItem::scaleAndShearOffset(const QPointF &localPoint) const +{ + const QPointF scaled = scaleOnlyOffset(localPoint); + const qreal kx = qTan(qDegreesToRadians(m_transform.skewX)); + const qreal ky = qTan(qDegreesToRadians(m_transform.skewY)); + return QPointF(scaled.x() + kx * scaled.y(), scaled.y() + ky * scaled.x()); +} + +/** + @brief DiagramImageItem::handlePosition + Local-space position of handle at vector index `index`, for + whichever role it currently holds -- the single source both + rebuildHandles() and repositionHandles() read from, so the two can + never disagree about where a handle belongs. +*/ +QPointF DiagramImageItem::handlePosition(int index) const +{ + const qreal w = pixmap_.width(), h = pixmap_.height(); + const HandleRole role = m_handleRoles.at(index); + if (role == HandleRole::Resize) + return handleNaturalPosition(index, w, h); + if (role == HandleRole::Rotate) + return cornerPosition(index, w, h); // Rotate handles are always the first 4 in RotateSkew mode, so index IS the corner slot + if (role == HandleRole::SkewEdge) + return edgeMidpointPosition(index - 4, w, h); // ...and SkewEdge the next 4, offset by those same 4 + return m_transform.pivot; // Pivot +} + +/** + @brief DiagramImageItem::mousePressEvent + Clicking an already-selected image cycles its handle mode, exactly + matching QetShapeItem's own established convention for the same + gesture -- deliberately kept consistent rather than inventing a + different interaction just because this is a different class. +*/ +void DiagramImageItem::mousePressEvent(QGraphicsSceneMouseEvent *event) +{ + const bool wasAlreadySelected = isSelected(); + event->ignore(); + QetGraphicsItem::mousePressEvent(event); + + if (event->button() == Qt::LeftButton) + { + if (wasAlreadySelected && isSelected()) + toggleHandleMode(); + event->accept(); + } +} + +/** + @brief DiagramImageItem::toggleHandleMode +*/ +void DiagramImageItem::toggleHandleMode() +{ + prepareGeometryChange(); + m_handleMode = (m_handleMode == HandleMode::Size) ? HandleMode::RotateSkew : HandleMode::Size; + rebuildHandles(); + refreshInteractionHints(); +} + +/** + @brief DiagramImageItem::nextHandleMode + @return whichever mode a click would switch to from here -- the + other one, since there are only two. +*/ +DiagramImageItem::HandleMode DiagramImageItem::nextHandleMode() const +{ + return (m_handleMode == HandleMode::Size) ? HandleMode::RotateSkew : HandleMode::Size; +} + +/** + @brief DiagramImageItem::handleModeLabel +*/ +QString DiagramImageItem::handleModeLabel(HandleMode mode) +{ + return (mode == HandleMode::Size) ? tr("redimensionner") : tr("pivoter/incliner"); +} + +/** + @brief DiagramImageItem::updateModeHint + Keeps the tooltip in sync with what the next click would do -- + called on selection change (so it appears/disappears with the + handles themselves) and after every mode switch. Ported from + QetShapeItem's identical method: deliberately short, since this is + a tooltip, not documentation -- the fuller gesture/modifier + reference lives in the status bar instead (see + currentModeStatusHint(), hoverEnterEvent()). +*/ +void DiagramImageItem::updateModeHint() +{ + setToolTip(isSelected() + ? tr("Cliquer : mode %1").arg(handleModeLabel(nextHandleMode())) + : QString()); +} + +/** + @brief DiagramImageItem::refreshInteractionHints + Keeps the tooltip text current, and -- if already being hovered -- + immediately re-shows both the tooltip and the status bar hint + rather than leaving them stuck on whatever was true before. Ported + from QetShapeItem's identical method, for the identical reason: Qt + only re-evaluates a tooltip, and this class only re-shows the + status bar, when the cursor *moves* -- selecting an image (often + clicked while the mouse was already sitting on it) or cycling + handle modes (definitely clicked while sitting on it) both change + what should be shown without the cursor moving at all. +*/ +void DiagramImageItem::refreshInteractionHints() +{ + updateModeHint(); + + if (!isHovered() || !isSelected()) + return; + + showStatusHint(currentModeStatusHint()); +} + +/** + @brief DiagramImageItem::currentModeStatusHint + One-line reference for whatever handles are visible right now, + shown in the status bar while hovering a selected image's body -- + the modifier keys in particular (Ctrl, Shift) have no other visible + indication that they do anything at all. Also carries the same + "next mode" information as the tooltip, since the status bar has + room for the full picture in one place. +*/ +QString DiagramImageItem::currentModeStatusHint() const +{ + QString hint = (m_handleMode == HandleMode::Size) + ? tr("Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)") + : tr("Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation"); + hint += tr(" -- %1 : mode %2").arg(tr("Cliquer"), handleModeLabel(nextHandleMode())); + return hint; +} + +/** + @brief DiagramImageItem::hoverEnterEvent +*/ +void DiagramImageItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event) +{ + QetGraphicsItem::hoverEnterEvent(event); + refreshInteractionHints(); +} + +/** + @brief DiagramImageItem::hoverLeaveEvent +*/ +void DiagramImageItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) +{ + QetGraphicsItem::hoverLeaveEvent(event); + clearStatusHint(); +} + +/** + @brief DiagramImageItem::clearHandles +*/ +void DiagramImageItem::clearHandles() +{ + if (!m_handler_vector.isEmpty()) + { + qDeleteAll(m_handler_vector); + m_handler_vector.clear(); + } + m_handleRoles.clear(); +} + +/** + @brief DiagramImageItem::rebuildHandles + A deliberately small switch compared to QetShapeItem's own version: + images have exactly one "shape" (a plain rectangle matching the + pixmap's natural size), so there's no shape-type branching to do -- + just the two handle modes themselves. +*/ +/** + @brief DiagramImageItem::colorForHandleRole / hintForHandleRole + Single source of truth for both rebuildHandles() (which sets each + handle's native tooltip) and sceneEventFilter()'s hover dispatch + (which shows the identical text in the status bar) -- keeping these + as two independently-maintained copies is exactly how they'd + quietly drift apart over time, as already happened once between + writing this pair. +*/ +QColor DiagramImageItem::colorForHandleRole(HandleRole role) +{ + switch (role) + { + case HandleRole::Resize: return Qt::blue; + case HandleRole::Rotate: return Qt::darkGreen; + case HandleRole::SkewEdge: return QColor(255, 140, 0); + case HandleRole::Pivot: return Qt::red; + } + return Qt::blue; +} + +QString DiagramImageItem::hintForHandleRole(HandleRole role) +{ + switch (role) + { + case HandleRole::Resize: return tr("Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)"); + case HandleRole::Rotate: return tr("Glisser : pivoter (Maj = par pas de 15°)"); + case HandleRole::SkewEdge: return tr("Glisser : incliner (Maj = par pas de 15°)"); + case HandleRole::Pivot: return tr("Glisser : déplacer le centre de rotation"); + } + return QString(); +} + +void DiagramImageItem::rebuildHandles() +{ + clearHandles(); + + if (m_handleMode == HandleMode::Size) + { + for (int i = 0; i < 8; ++i) + m_handleRoles << HandleRole::Resize; + } + else // RotateSkew: 4 corners (rotate), then 4 edges (skew), then 1 pivot -- handlePosition() relies on this exact order + { + for (int i = 0; i < 4; ++i) m_handleRoles << HandleRole::Rotate; + for (int i = 0; i < 4; ++i) m_handleRoles << HandleRole::SkewEdge; + m_handleRoles << HandleRole::Pivot; + } + + if (m_handleRoles.isEmpty() || !scene()) + return; + + QVector<QPointF> positions; + for (int i = 0; i < m_handleRoles.size(); ++i) + positions << handlePosition(i); + + m_handler_vector = QetGraphicsHandlerItem::handlerForPoint(mapToScene(positions), QETUtils::graphicsHandlerSize(this)); + + for (int i = 0; i < m_handler_vector.size(); ++i) + { + QetGraphicsHandlerItem *h = m_handler_vector.at(i); + h->setZValue(zValue() + 1); + h->setColor(colorForHandleRole(m_handleRoles.at(i))); + h->setToolTip(hintForHandleRole(m_handleRoles.at(i))); + h->setAcceptHoverEvents(true); + scene()->addItem(h); + h->installSceneEventFilter(this); + } +} + +/** + @brief DiagramImageItem::repositionHandles + Moves the *existing* handle items to match current geometry, without + touching their identity -- safe to call on every frame of a live + drag, matching QetShapeItem's own repositionHandles()/rebuildHandles() + split for the identical reason. +*/ +void DiagramImageItem::repositionHandles() +{ + if (m_handler_vector.isEmpty()) + return; + if (m_handler_vector.size() != m_handleRoles.size()) + { + rebuildHandles(); + return; + } + + for (int i = 0; i < m_handleRoles.size(); ++i) + m_handler_vector.at(i)->setPos(mapToScene(handlePosition(i))); +} + +/** + @brief DiagramImageItem::sceneEventFilter + Dispatches handle interaction events -- structurally identical to + QetShapeItem::sceneEventFilter(), reused as a pattern rather than + shared as code, since the two classes' handle roles are different + enough (no path/polygon/arc concepts here at all) that sharing the + dispatcher itself would need an awkward, indirect abstraction for + very little actual code saved. +*/ +bool DiagramImageItem::sceneEventFilter(QGraphicsItem *watched, QEvent *event) +{ + if (watched->type() != QetGraphicsHandlerItem::Type) + return false; + + QetGraphicsHandlerItem *qghi = qgraphicsitem_cast<QetGraphicsHandlerItem *>(watched); + const int index = m_handler_vector.indexOf(qghi); + if (index == -1) + return false; + + if (event->type() == QEvent::GraphicsSceneMousePress) + { + handlerMousePressEvent(index, static_cast<QGraphicsSceneMouseEvent *>(event)->modifiers()); + return true; + } + if (event->type() == QEvent::GraphicsSceneMouseMove) + { + handlerMouseMoveEvent(index, static_cast<QGraphicsSceneMouseEvent *>(event)); + return true; + } + if (event->type() == QEvent::GraphicsSceneMouseRelease) + { + handlerMouseReleaseEvent(index); + return true; + } + if (event->type() == QEvent::GraphicsSceneHoverEnter) + { + // On top of the tooltip Qt already shows natively from the + // handle's own setToolTip() (see rebuildHandles()) -- returning + // false leaves that native tooltip handling alone, matching + // QetShapeItem's identical dual approach for its own handles. + showStatusHint(hintForHandleRole(m_handleRoles.at(index))); + return false; + } + if (event->type() == QEvent::GraphicsSceneHoverLeave) + { + clearStatusHint(); + return false; + } + return false; +} + +/** + @brief DiagramImageItem::showStatusHint +*/ +void DiagramImageItem::showStatusHint(const QString &text) const +{ + if (text.isEmpty() || !diagram() || diagram()->views().isEmpty()) + return; + if (auto *editor = QETApp::diagramEditorAncestorOf(diagram()->views().constFirst())) + editor->statusBar()->showMessage(text); +} + +/** + @brief DiagramImageItem::clearStatusHint +*/ +void DiagramImageItem::clearStatusHint() const +{ + if (!diagram() || diagram()->views().isEmpty()) + return; + if (auto *editor = QETApp::diagramEditorAncestorOf(diagram()->views().constFirst())) + editor->statusBar()->clearMessage(); +} + +/** + @brief DiagramImageItem::handlerMousePressEvent + For a Resize handle, temporarily repositions the pivot for the + duration of this drag: to the OPPOSITE corner/edge by default (so + that one stays fixed, the usual convention), or to the CENTER if + Ctrl is held at the moment of the press (so the image grows + symmetrically from its middle instead). Decided once here, not + re-checked on every subsequent move -- mirroring the identical fix + already made for shape creation, and for the identical reason: + continuously re-checking made releasing the modifier mid-drag + revert a decision that felt already made, rather than a deliberate + choice made once at the start. + + Verified numerically before relying on this: with the pivot fixed + at whichever reference point applies, solving for a new scale that + puts the dragged handle at the mouse automatically keeps that + reference point exactly where it was, with zero drift, across all 8 + handles and a rotated, non-uniformly-scaled starting transform. + compensatedPositionForNewPivot() is what keeps this repositioning + itself invisible -- without it, temporarily moving the pivot would + visibly jump the image the instant the drag starts. +*/ +void DiagramImageItem::handlerMousePressEvent(int index, Qt::KeyboardModifiers mods) +{ + m_vector_index = index; + m_original_pos = pos(); + m_original_transform = m_transform; + + if (m_handleRoles.at(index) == HandleRole::Resize) + { + m_resizeCenterAnchored = mods & Qt::ControlModifier; + const QPointF referencePoint = m_resizeCenterAnchored + ? QPointF(pixmap_.width() / 2.0, pixmap_.height() / 2.0) + : handleNaturalPosition(oppositeHandleIndex(index), pixmap_.width(), pixmap_.height()); + const QPointF newPos = compensatedPositionForNewPivot(pos(), m_transform.pivot, referencePoint, m_transform.linearPart()); + m_deferHandleReposition = true; + m_transform.pivot = referencePoint; + // QGraphicsObject::setPos(), not the plain setPos() -- see + // setPivot()'s identical comment for why: QetGraphicsItem's + // override snaps to the grid, which would corrupt this exact + // compensation the same way it did there. + QGraphicsObject::setPos(newPos); + setTransform(m_transform.toMatrix()); + m_deferHandleReposition = false; + } +} + +/** + @brief DiagramImageItem::handlerMouseMoveEvent +*/ +void DiagramImageItem::handlerMouseMoveEvent(int index, QGraphicsSceneMouseEvent *event) +{ + const HandleRole role = m_handleRoles.at(index); + + if (role == HandleRole::Resize) + dragResize(index, mapFromScene(event->scenePos()), event->modifiers()); + else if (role == HandleRole::Rotate) + dragRotateHandle(index, event->scenePos(), event->modifiers()); // index IS the corner slot (0-3): Rotate handles are always first + else if (role == HandleRole::SkewEdge) + dragSkewHandle(index - 4, event->scenePos(), event->modifiers()); // offset by the 4 preceding Rotate handles + else if (role == HandleRole::Pivot) + dragPivot(mapFromScene(event->scenePos())); +} + +/** + @brief DiagramImageItem::handlerMouseReleaseEvent + Two responsibilities, in order: first, Resize's own pivot cleanup + (the pivot was temporarily relocated to the opposite corner or + center in handlerMousePressEvent() purely to make the drag math + simple, and has to move back now that the drag is over, via + resetPivotToBoundingRectCenter(), which itself handles the position + compensation that reset needs) -- but only when the pivot isn't + user-customized, matching dragPivot()'s own comment for why. + Second -- and previously entirely missing -- building the actual + undo command for whatever changed during this drag: every drag + method above mutates m_transform directly and calls setTransform() + immediately, live, with no undo tracking of its own at all, exactly + like QetShapeItem's identical handlerMouseMoveEvent()/dragResize() + pair. QetShapeItem's own handlerMouseReleaseEvent() is where that + gets reconciled into a single undo step per role, comparing + m_original_transform/m_original_pos (captured at press time) against + the now-already-applied live values -- this is a direct port of + that same pattern for this class's own, smaller role set. Pushing a + command whose redo() sets a property to what it's already live at + is intentional, not wasted: redo() runs once immediately, as a + harmless no-op, so the stack has a correct entry for Ctrl+Z without + the live drag needing any awareness of undo at all. For Pivot + specifically, chaining "pos" before "rawPivot" -- not the + compensating "pivot" -- means undoing simply restores both to their + exact recorded values, without a second, redundant compensation + needing to run and (correctly, but confusingly) arrive at the same + place a longer way around. +*/ +void DiagramImageItem::handlerMouseReleaseEvent(int index) +{ + const HandleRole role = m_handleRoles.at(index); + + if (role == HandleRole::Resize && !m_pivotIsCustom) + resetPivotToBoundingRectCenter(); + + if (diagram()) + { + QUndoCommand *undo = nullptr; + + switch (role) + { + case HandleRole::Resize: + if (!qFuzzyCompare(m_transform.scaleX, m_original_transform.scaleX)) + undo = new QPropertyUndoCommand(this, "scaleFactorX", m_original_transform.scaleX, m_transform.scaleX); + if (!qFuzzyCompare(m_transform.scaleY, m_original_transform.scaleY)) + { + if (undo) + new QPropertyUndoCommand(this, "scaleFactorY", m_original_transform.scaleY, m_transform.scaleY, undo); + else + undo = new QPropertyUndoCommand(this, "scaleFactorY", m_original_transform.scaleY, m_transform.scaleY); + } + break; + + case HandleRole::Rotate: + if (!qFuzzyCompare(m_transform.rotation, m_original_transform.rotation)) + undo = new QPropertyUndoCommand(this, "rotationAngle", m_original_transform.rotation, m_transform.rotation); + break; + + case HandleRole::SkewEdge: + if (!qFuzzyCompare(m_transform.skewX, m_original_transform.skewX)) + undo = new QPropertyUndoCommand(this, "skewX", m_original_transform.skewX, m_transform.skewX); + else if (!qFuzzyCompare(m_transform.skewY, m_original_transform.skewY)) + undo = new QPropertyUndoCommand(this, "skewY", m_original_transform.skewY, m_transform.skewY); + break; + + case HandleRole::Pivot: + if (m_transform.pivot != m_original_transform.pivot) + { + undo = new QUndoCommand(tr("Déplacer le centre de rotation d'une image")); + new QPropertyUndoCommand(this, "pos", m_original_pos, pos(), undo); + new QPropertyUndoCommand(this, "rawPivot", m_original_transform.pivot, m_transform.pivot, undo); + } + break; + } + + if (undo) + { + if (undo->text().isEmpty()) + undo->setText(tr("Modifier une image")); + diagram()->undoStack().push(undo); + } + } + + m_vector_index = -1; +} + +/** + @brief DiagramImageItem::dragResize + Verified numerically (all 8 handles, a rotated and non-uniformly + scaled starting transform) before writing this: undoing only + rotation from the target -- never scale, since that's the very + value being solved for -- is what avoids the feedback-loop mistake + a full mapFromScene()-based solve would fall into (mapFromScene() + divides out the CURRENT scale, not the new one, since it doesn't + know a new one is being computed at all). +*/ +void DiagramImageItem::dragResize(int index, const QPointF &localPos, Qt::KeyboardModifiers mods) +{ + const QPointF pivotScene = pos() + m_transform.pivot; + QTransform undoRotation; + undoRotation.rotate(-m_transform.rotation); + const QPointF postScaleOffset = undoRotation.map(mapToScene(localPos) - pivotScene); + + const QPointF handleNatural = handleNaturalPosition(index, pixmap_.width(), pixmap_.height()); + const qreal handleDx = handleNatural.x() - m_transform.pivot.x(); + const qreal handleDy = handleNatural.y() - m_transform.pivot.y(); + + qreal newScaleX = m_transform.scaleX; + qreal newScaleY = m_transform.scaleY; + if (adjustsX(index) && qAbs(handleDx) > 1e-6) + newScaleX = postScaleOffset.x() / handleDx; + if (adjustsY(index) && qAbs(handleDy) > 1e-6) + newScaleY = postScaleOffset.y() / handleDy; + + if (mods & Qt::ShiftModifier) + { + // Preserve the ORIGINAL aspect ratio (captured at press time in + // m_original_transform), not force scaleX==scaleY -- an image + // that wasn't square to begin with should stay proportional to + // itself, not become literally square the moment Shift is held. + const qreal originalRatio = (qFuzzyIsNull(m_original_transform.scaleY)) + ? 1.0 : m_original_transform.scaleX / m_original_transform.scaleY; + if (adjustsX(index) && !adjustsY(index)) + newScaleY = newScaleX / (qFuzzyIsNull(originalRatio) ? 1.0 : originalRatio); + else if (adjustsY(index) && !adjustsX(index)) + newScaleX = newScaleY * originalRatio; + else + { + // Corner handle: whichever axis moved further from its own + // starting value, in relative terms, drives the other. + const qreal relX = qAbs(newScaleX / m_original_transform.scaleX); + const qreal relY = qAbs(newScaleY / m_original_transform.scaleY); + if (relX > relY) + newScaleY = newScaleX / (qFuzzyIsNull(originalRatio) ? 1.0 : originalRatio); + else + newScaleX = newScaleY * originalRatio; + } + } + + // A pixmap can't meaningfully render at zero or negative scale -- + // clamped well above zero rather than letting it vanish or silently + // flip (negative scale is a mirror, and mirroring is already its + // own deliberate, explicit context-menu action, not something a + // fast drag past the opposite edge should trigger by accident). + const qreal MIN_SCALE = 0.02; + if (newScaleX < MIN_SCALE) newScaleX = MIN_SCALE; + if (newScaleY < MIN_SCALE) newScaleY = MIN_SCALE; + + m_transform.scaleX = newScaleX; + m_transform.scaleY = newScaleY; + setTransform(m_transform.toMatrix()); + repositionHandles(); + emit transformChanged(); +} + +/** + @brief DiagramImageItem::dragRotateHandle + Verified numerically before writing this (all 4 corners, WITH + nonzero skew already present -- scaleAndShearOffset() is what + makes the reference direction correctly account for that): the + handle ends up pointing exactly at the mouse's angle from the + pivot, and the pivot itself never moves. Ported from + QetShapeItem::dragRotateHandle() -- see that copy's own comment for + why this is a plain assignment rather than a recurrence (computing + the angle via mapFromScene() would divide out the current rotation + and turn each frame's result into a feedback loop). +*/ +void DiagramImageItem::dragRotateHandle(int cornerIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods) +{ + const QPointF scenePivot = pos() + m_transform.pivot; + const qreal angleMouse = qRadiansToDegrees(qAtan2(scenePos.y() - scenePivot.y(), scenePos.x() - scenePivot.x())); + + const QPointF reference = scaleAndShearOffset(cornerPosition(cornerIndex, pixmap_.width(), pixmap_.height())); + const qreal angleReference = qRadiansToDegrees(qAtan2(reference.y(), reference.x())); + + qreal angle = angleMouse - angleReference; + if (mods & Qt::ShiftModifier) + angle = qRound(angle / 15.0) * 15.0; + + m_transform.rotation = angle; + setTransform(m_transform.toMatrix()); + repositionHandles(); + emit transformChanged(); +} + +/** + @brief DiagramImageItem::dragSkewHandle + Verified numerically before writing this (all 4 edges, WITH nonzero + rotation already present): recovers the exact skew angle that would + put the edge handle at a given scene position, for both skewX + (N/S edges) and skewY (E/W edges). Ported from + QetShapeItem::dragSkewHandle() -- see that copy's own comment for + the closed-form derivation (solved for the one skew component being + dragged, holding everything else fixed, since going through + mapFromScene() would divide out the very value being solved for). +*/ +void DiagramImageItem::dragSkewHandle(int edgeIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods) +{ + const QPointF pivot = m_transform.pivot; + const QPointF Q = scaleOnlyOffset(edgeMidpointPosition(edgeIndex, pixmap_.width(), pixmap_.height())); + + const qreal rad = qDegreesToRadians(m_transform.rotation); + const qreal c = qCos(rad), s = qSin(rad); + const QPointF targetRel = scenePos - pos() - pivot; + const QPointF M(targetRel.x() * c + targetRel.y() * s, + -targetRel.x() * s + targetRel.y() * c); + + qreal degrees; + if (edgeIndex == 0 || edgeIndex == 2) // N/S edge -> skewX + { + if (qFuzzyIsNull(Q.y())) return; + degrees = qRadiansToDegrees(qAtan((M.x() - Q.x()) / Q.y())); + if (mods & Qt::ShiftModifier) degrees = qRound(degrees / 15.0) * 15.0; + m_transform.skewX = degrees; + } + else // E/W edge -> skewY + { + if (qFuzzyIsNull(Q.x())) return; + degrees = qRadiansToDegrees(qAtan((M.y() - Q.y()) / Q.x())); + if (mods & Qt::ShiftModifier) degrees = qRound(degrees / 15.0) * 15.0; + m_transform.skewY = degrees; + } + + setTransform(m_transform.toMatrix()); + repositionHandles(); + emit transformChanged(); +} + +/** + @brief DiagramImageItem::dragPivot + Marks the pivot as user-customized, the same way QetShapeItem's own + pivot handle does -- so a later resize (see handlerMouseReleaseEvent()) + doesn't silently snap it back to the bounding-rect center the + instant the user deliberately moved it somewhere else. +*/ +void DiagramImageItem::dragPivot(const QPointF &localPos) +{ + m_pivotIsCustom = true; + setPivot(localPos); + repositionHandles(); +} + +/** + @brief DiagramImageItem::restoreAspectRatio + Context-menu action, the direct answer to "restoration of aspect + ratio" from the original wishlist: makes scaleY match scaleX, + keeping the current width fixed. The natural aspect ratio is + already fully accounted for by the pixmap's own width/height (a + uniform scale, by definition, can never distort it) -- the + distortion is entirely scaleX and scaleY disagreeing with each + other, so undoing it is exactly "make them agree", not a + computation involving pixmap_'s own dimensions at all. An earlier + version of this multiplied by the natural height/width ratio a + second time, which double-counted it and left the image still + visibly distorted, just less obviously so. +*/ +void DiagramImageItem::restoreAspectRatio() +{ + if (!diagram() || diagram()->isReadOnly()) + return; + + if (qFuzzyCompare(m_transform.scaleY, m_transform.scaleX)) + return; + + auto *undo = new QPropertyUndoCommand(this, "scaleFactorY", m_transform.scaleY, m_transform.scaleX); + undo->setText(tr("Restaurer les proportions d'une image")); + diagram()->undoStack().push(undo); +} + +/** + @brief DiagramImageItem::itemChange +*/ +QVariant DiagramImageItem::itemChange(GraphicsItemChange change, const QVariant &value) +{ + if (change == ItemSelectedHasChanged) + { + if (value.toBool()) + rebuildHandles(); + else + { + prepareGeometryChange(); + clearHandles(); + m_handleMode = HandleMode::Size; + } + refreshInteractionHints(); + } + else if (change == ItemPositionHasChanged || change == ItemTransformHasChanged) + { + if (!m_deferHandleReposition) + repositionHandles(); + } + else if (change == ItemSceneHasChanged) + { + if (!scene()) + setSelected(false); + } + + return QGraphicsItem::itemChange(change, value); +} + +/** + @brief DiagramImageItem::computeDisplayPixmap + Re-derives what pixmap_ should be from first principles: crop the + true original down to the chosen region, then colour-key whichever + colours have been picked out of it. Used whenever crop() or + setTransparentColor() changes one of those two independently, so + the other's effect is correctly re-applied on top rather than lost + or compounded -- cropping after colours were already picked has to + still show them keyed out; picking colours after a crop has to only + ever consider what's still actually part of the image. + @param base the true, uncropped original + @param cropRect the region of base to keep, in base's own coordinates + @param colors colours to key transparent within the cropped region + @param tolerance how loosely to match those colours, 0-100 +*/ +QPixmap DiagramImageItem::computeDisplayPixmap(const QPixmap &base, const QRect &cropRect, const QList<QColor> &colors, int tolerance) +{ + const QPixmap cropped = cropRect == base.rect() ? base : base.copy(cropRect); + if (colors.isEmpty()) + return cropped; + return QPixmap::fromImage(ImageTransparentColorDialog::applyColorKey(cropped.toImage(), colors, tolerance)); } /** @@ -153,8 +1134,91 @@ bool DiagramImageItem::fromXml(const QDomElement &e) pixmap.loadFromData(array); setPixmap(pixmap); - setScale(e.attribute("size").toDouble()); - setRotation(e.attribute("rotation").toDouble()); + // Falls back to treating the loaded result as its own base, with no + // remembered crop or colours -- correct both for a genuinely plain + // image and for a file saved before these features existed. + // Overwritten below if the file actually does carry this + // information. + m_base_pixmap = pixmap; + m_crop_rect = pixmap.rect(); + m_transparent_colors.clear(); + m_transparent_tolerance = 10; + + const QDomElement colorsElement = e.firstChildElement("transparent_colors"); + bool hasColors = !colorsElement.isNull(); + if (hasColors) + { + m_transparent_tolerance = colorsElement.attribute("tolerance", "10").toInt(); + for (const QDomElement &colorElement : QET::findInDomElement(colorsElement, "color")) + { + m_transparent_colors.append(QColor( + colorElement.attribute("r").toInt(), + colorElement.attribute("g").toInt(), + colorElement.attribute("b").toInt())); + } + } + + const QDomElement cropElement = e.firstChildElement("crop"); + bool hasCrop = !cropElement.isNull(); + if (hasCrop) + { + m_crop_rect = QRect( + cropElement.attribute("x").toInt(), + cropElement.attribute("y").toInt(), + cropElement.attribute("w").toInt(), + cropElement.attribute("h").toInt()); + } + + // Present, and only meaningful, whenever either of the above is -- + // the base pixmap on its own, with no crop or colours to apply to + // it, wouldn't mean anything. + if (hasColors || hasCrop) + { + const QDomElement baseElement = e.firstChildElement("image_base"); + if (!baseElement.isNull()) + { + const QByteArray baseArray = QByteArray::fromBase64(baseElement.text().toLatin1()); + QPixmap basePixmap; + if (basePixmap.loadFromData(baseArray)) + m_base_pixmap = basePixmap; + } + // m_crop_rect may still refer to a saved file's base image, not + // pixmap (used as a fallback above only when nothing better is + // available) -- clamp it to whatever base actually ended up + // loaded, so an inconsistent or hand-edited file can't produce + // an out-of-bounds crop rect later. + m_crop_rect = m_crop_rect.intersected(m_base_pixmap.rect()); + if (m_crop_rect.isEmpty()) + m_crop_rect = m_base_pixmap.rect(); + } + + // Baseline: the plain "rotation"/"size" attributes, understood by + // every version of this code, past and future -- size applied + // uniformly to both axes, since a single float can't say otherwise. + // Overwritten below if the file actually carries the richer + // <transform> element (independent scaleX/scaleY, and/or a custom + // pivot), the same two-tier fallback QetShapeItem's own fromXml() + // already uses for its identical <transform> element. + m_transform.rotation = e.attribute("rotation").toDouble(); + m_transform.scaleX = e.attribute("size").toDouble(); + m_transform.scaleY = m_transform.scaleX; + m_transform.pivot = boundingRect().center(); + m_pivotIsCustom = false; + + const QDomElement transformElement = e.firstChildElement("transform"); + if (!transformElement.isNull()) + { + m_transform.rotation = transformElement.attribute("rotation", "0").toDouble(); + m_transform.skewX = transformElement.attribute("skewX", "0").toDouble(); + m_transform.skewY = transformElement.attribute("skewY", "0").toDouble(); + m_transform.scaleX = transformElement.attribute("scaleX", "1").toDouble(); + m_transform.scaleY = transformElement.attribute("scaleY", "1").toDouble(); + m_transform.pivot = QPointF(transformElement.attribute("pivotX", "0").toDouble(), + transformElement.attribute("pivotY", "0").toDouble()); + m_pivotIsCustom = true; + } + setTransform(m_transform.toMatrix()); + //We directly call setPos from QGraphicsObject, because QetGraphicsItem will snap to grid QGraphicsObject::setPos(e.attribute("x").toDouble(), e.attribute("y").toDouble()); setZValue(e.attribute("z", QString::number(this->zValue())).toDouble()); @@ -174,8 +1238,20 @@ QDomElement DiagramImageItem::toXml(QDomDocument &document) const result.setAttribute("x", QString::number(pos().x())); result.setAttribute("y", QString::number(pos().y())); result.setAttribute("z", QString::number(this->zValue())); - result.setAttribute("rotation", QString::number(QET::correctAngle(rotation()))); - result.setAttribute("size", QString::number(scale())); + // m_transform.rotation/scaleX, not rotation()/scale(): those are + // QGraphicsItem's own convenience properties, and this class no + // longer ever calls their setters at all -- it uses setTransform() + // directly now, the only way to represent independent scaleX/scaleY + // at all, so rotation()/scale() would always read back their + // defaults (0 and 1) regardless of the image's actual, visible + // state. "size" keeps scaleX specifically (not some average of + // scaleX/scaleY) as its best-effort value for older code that only + // ever understood a single uniform scale -- the <transform> element + // below is what any code that understands both axes independently + // should prefer instead, exactly mirroring how QetShapeItem's own + // otherwise-identical <transform> element already works. + result.setAttribute("rotation", QString::number(QET::correctAngle(m_transform.rotation))); + result.setAttribute("size", QString::number(m_transform.scaleX)); result.setAttribute("is_movable", bool(is_movable_)); //write the pixmap in the xml element after he was been transformed to base64 @@ -186,5 +1262,372 @@ QDomElement DiagramImageItem::toXml(QDomDocument &document) const QDomText base64 = document.createTextNode(array.toBase64()); result.appendChild(base64); + // Full-fidelity transform, only written when it actually carries + // something the rotation/size attributes above can't already + // express -- exactly the same convention QetShapeItem's own + // identical <transform> element already uses, for the same reason: + // this keeps a plain, never-resized-independently image's saved + // file byte-for-byte unchanged. + const bool hasRichTransform = !qFuzzyCompare(m_transform.scaleX, m_transform.scaleY) + || !qFuzzyIsNull(m_transform.skewX) || !qFuzzyIsNull(m_transform.skewY) || m_pivotIsCustom; + if (hasRichTransform) + { + QDomElement transformElement = document.createElement("transform"); + transformElement.setAttribute("rotation", QString::number(m_transform.rotation)); + transformElement.setAttribute("skewX", QString::number(m_transform.skewX)); + transformElement.setAttribute("skewY", QString::number(m_transform.skewY)); + transformElement.setAttribute("scaleX", QString::number(m_transform.scaleX)); + transformElement.setAttribute("scaleY", QString::number(m_transform.scaleY)); + transformElement.setAttribute("pivotX", QString::number(m_transform.pivot.x())); + transformElement.setAttribute("pivotY", QString::number(m_transform.pivot.y())); + result.appendChild(transformElement); + } + + // Only written when there's actually something to remember -- a + // plain image that's never been cropped or had transparency applied + // shouldn't carry this extra weight at all. pixmap_ above already + // reflects the current result on its own, so older code (or a file + // that never used either feature) reads back exactly what it + // always did; this is purely additional context for the dialogs' + // own memory, letting them be reopened non-destructively. + const bool hasCrop = (m_crop_rect != m_base_pixmap.rect()); + const bool hasColors = !m_transparent_colors.isEmpty(); + + if (hasColors) + { + QDomElement colorsElement = document.createElement("transparent_colors"); + colorsElement.setAttribute("tolerance", m_transparent_tolerance); + for (const QColor &color : m_transparent_colors) + { + QDomElement colorElement = document.createElement("color"); + colorElement.setAttribute("r", color.red()); + colorElement.setAttribute("g", color.green()); + colorElement.setAttribute("b", color.blue()); + colorsElement.appendChild(colorElement); + } + result.appendChild(colorsElement); + } + + if (hasCrop) + { + QDomElement cropElement = document.createElement("crop"); + cropElement.setAttribute("x", m_crop_rect.x()); + cropElement.setAttribute("y", m_crop_rect.y()); + cropElement.setAttribute("w", m_crop_rect.width()); + cropElement.setAttribute("h", m_crop_rect.height()); + result.appendChild(cropElement); + } + + if (hasCrop || hasColors) + { + QByteArray baseArray; + QBuffer baseBuffer(&baseArray); + baseBuffer.open(QIODevice::ReadWrite); + m_base_pixmap.save(&baseBuffer, "PNG"); + QDomElement baseElement = document.createElement("image_base"); + baseElement.appendChild(document.createTextNode(baseArray.toBase64())); + result.appendChild(baseElement); + } + return(result); } + +/** + @brief DiagramImageItem::contextMenuEvent + @param event +*/ +void DiagramImageItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) +{ + if (!diagram()) + { + QetGraphicsItem::contextMenuEvent(event); + return; + } + + if (diagram()->selectedItems().isEmpty()) + this->setSelected(true); + + if (isSelected() && scene()->selectedItems().size() == 1) + { + DiagramView *d_view = nullptr; + for (QGraphicsView *view : diagram()->views()) + { + if (view->isActiveWindow()) + { + d_view = dynamic_cast<DiagramView *>(view); + if (d_view) + continue; + } + } + + if (d_view) + { + QScopedPointer<QMenu> menu(new QMenu()); + + QAction *replace = menu.data()->addAction(tr("Remplacer l'image...")); + connect(replace, &QAction::triggered, this, &DiagramImageItem::replaceImage); + + QAction *transparentColor = menu.data()->addAction(tr("Couleur transparente...")); + connect(transparentColor, &QAction::triggered, this, &DiagramImageItem::setTransparentColor); + + QAction *cropAction = menu.data()->addAction(tr("Rogner...")); + connect(cropAction, &QAction::triggered, this, &DiagramImageItem::crop); + + QAction *mirrorH = menu.data()->addAction(tr("Miroir horizontal")); + QAction *mirrorV = menu.data()->addAction(tr("Miroir vertical")); + connect(mirrorH, &QAction::triggered, this, [this]() { mirror(true); }); + connect(mirrorV, &QAction::triggered, this, [this]() { mirror(false); }); + + QAction *restoreRatio = menu.data()->addAction(tr("Restaurer les proportions")); + connect(restoreRatio, &QAction::triggered, this, &DiagramImageItem::restoreAspectRatio); + + menu.data()->addSeparator(); + QAction *properties = menu.data()->addAction(tr("Propriétés...")); + connect(properties, &QAction::triggered, this, &DiagramImageItem::editProperty); + + menu.data()->addSeparator(); + menu.data()->addActions(d_view->contextMenuActions()); + menu.data()->exec(event->screenPos()); + event->accept(); + return; + } + } + + QetGraphicsItem::contextMenuEvent(event); +} + +/** + @brief DiagramImageItem::replaceImage + Context-menu action: swaps the underlying pixmap for one loaded from + a new file, keeping position, rotation and scale untouched -- only + pixmap_ changes, everything else about how this item sits on the + diagram is left exactly as it was. Reuses the same file dialog + filter and error handling as DiagramEventAddImage::openDialog(), so + picking a replacement looks and behaves like picking a new image did + when this item was first inserted. +*/ +void DiagramImageItem::replaceImage() +{ + if (!diagram() || diagram()->isReadOnly()) + return; + + QWidget *parentWidget = diagram()->views().isEmpty() ? nullptr : diagram()->views().first(); + const QString fileName = QFileDialog::getOpenFileName( + parentWidget, tr("Selectionner une image..."), + QETApp::pictureDir(), tr("Image Files (*.png *.jpg *.jpeg *.bmp *.svg)")); + if (fileName.isEmpty()) + return; + + QImage image(fileName); + if (image.isNull()) + { + QMessageBox::critical(parentWidget, tr("Erreur"), tr("Impossible de charger l'image.")); + return; + } + + const QPixmap oldPixmap = pixmap_; + const QPixmap newPixmap = QPixmap::fromImage(image); + + // A wholesale replacement, not an edit of the existing image -- the + // new picture has nothing to do with whatever colours were picked + // or region was cropped for the old one, so this starts that + // memory fresh rather than carrying over choices that would no + // longer make sense. + m_base_pixmap = newPixmap; + m_crop_rect = newPixmap.rect(); + m_transparent_colors.clear(); + + auto *undo = new QPropertyUndoCommand(this, "pixmap", oldPixmap, newPixmap); + undo->setText(tr("Remplacer une image")); + diagram()->undoStack().push(undo); +} + +/** + @brief DiagramImageItem::mirror + Context-menu action: flips the pixmap itself, not a transform -- + unlike QetShapeItem::mirror(), which has rotation/skew to contend + with, there's no equivalent linear-transform decomposition needed + here: the bitmap is flipped once, directly, and stays flipped + regardless of whatever rotation is applied on top afterward. +*/ +void DiagramImageItem::mirror(bool horizontal) +{ + if (!diagram() || diagram()->isReadOnly()) + return; + + const QPixmap oldPixmap = pixmap_; + const QTransform flip = horizontal ? QTransform(-1, 0, 0, 1, 0, 0) : QTransform(1, 0, 0, -1, 0, 0); + const QPixmap newPixmap = pixmap_.transformed(flip); + + // The base is flipped the same way, to stay in sync with pixmap_ -- + // but the picked-colours list itself is left untouched: the actual + // colour values don't change when the image is mirrored, only their + // positions, so whatever was already keyed transparent should stay + // remembered and still apply correctly to the flipped version. + m_base_pixmap = m_base_pixmap.transformed(flip); + + // m_crop_rect, unlike the colour list, DOES need to change: it's + // defined in terms of positions within the base, and those + // positions just moved. Width/height and the other axis are + // untouched -- only the axis being flipped needs its edge mirrored + // (dimensions are unaffected by the flip, so it doesn't matter + // whether this reads m_base_pixmap's size from before or after the + // assignment above). + if (horizontal) + m_crop_rect = QRect(m_base_pixmap.width() - m_crop_rect.left() - m_crop_rect.width(), + m_crop_rect.top(), m_crop_rect.width(), m_crop_rect.height()); + else + m_crop_rect = QRect(m_crop_rect.left(), m_base_pixmap.height() - m_crop_rect.top() - m_crop_rect.height(), + m_crop_rect.width(), m_crop_rect.height()); + + auto *undo = new QPropertyUndoCommand(this, "pixmap", oldPixmap, newPixmap); + undo->setText(horizontal ? tr("Miroir horizontal d'une image") : tr("Miroir vertical d'une image")); + diagram()->undoStack().push(undo); +} + +/** + @brief DiagramImageItem::setTransparentColor + Context-menu action: opens ImageTransparentColorDialog against + m_base_pixmap (the pristine source), pre-populated with whatever + colours and tolerance were remembered from a previous session -- + both problems fixed together, since they had the same root cause: + passing pixmap_ (the already colour-keyed result) as if it were the + source, with nowhere to remember which colours produced it. Applies + the result the same way replaceImage() and mirror() do, through the + "pixmap" property, so undo/redo stays consistent across all three; + m_base_pixmap itself is deliberately left untouched here, since this + action only ever changes which colours are keyed out of it, not the + source those colours are keyed out of. +*/ +/** + @brief DiagramImageItem::setTransparentColor + Context-menu action: opens ImageTransparentColorDialog against the + CROPPED base (m_base_pixmap.copy(m_crop_rect)), not the full, + uncropped original -- picking a colour from a region that's already + been permanently cropped away would be picking a colour that isn't + even part of the image anymore. Pre-populated with whatever colours + and tolerance were remembered from a previous session. Applies the + result the same way replaceImage() and mirror() do, through the + "pixmap" property, so undo/redo stays consistent across all three; + m_base_pixmap and m_crop_rect are deliberately left untouched here, + since this action only ever changes which colours are keyed out, + never the source region they're keyed out of. +*/ +void DiagramImageItem::setTransparentColor() +{ + if (!diagram() || diagram()->isReadOnly()) + return; + + QWidget *parentWidget = diagram()->views().isEmpty() ? nullptr : diagram()->views().first(); + const QPixmap croppedBase = m_base_pixmap.copy(m_crop_rect); + ImageTransparentColorDialog dialog(croppedBase, m_transparent_colors, m_transparent_tolerance, parentWidget); + if (dialog.exec() != QDialog::Accepted) + return; + + m_transparent_colors = dialog.pickedColors(); + m_transparent_tolerance = dialog.tolerance(); + + const QPixmap oldPixmap = pixmap_; + const QPixmap newPixmap = dialog.resultPixmap(); + + auto *undo = new QPropertyUndoCommand(this, "pixmap", oldPixmap, newPixmap); + undo->setText(tr("Définir une couleur transparente")); + diagram()->undoStack().push(undo); +} + +/** + @brief DiagramImageItem::crop + Context-menu action: opens ImageCropDialog against pixmap_ (the + current, already colour-keyed display, so cropping is WYSIWYG + against whatever is actually visible), then applies the chosen + rectangle to both pixmap_ and m_base_pixmap together -- kept in + sync the same way mirror() keeps them in sync, since cropping is a + permanent, geometric change to the image's own content, unlike + setTransparentColor()'s non-destructive colour keying. + + pos() also needs adjusting, not just pixmap_: setPixmap() (called + via the "pixmap" undo command below) recomputes + transformOriginPoint() from the new, smaller boundingRect(), but + pos() itself is untouched by that -- without fixing it up here too, + the surviving content would visually jump to wherever local (0,0) + happens to land after shrinking, rather than staying exactly where + it already was. Chained into one undo step together with the pixmap + change, since undoing a crop has to restore both, or the restored + (larger) image ends up in the wrong place. +*/ +/** + @brief DiagramImageItem::crop + Context-menu action: opens ImageCropDialog against m_base_pixmap + (the true, uncropped original), pre-populated with whatever crop + rectangle was chosen in a previous session -- re-editable, not + destructive: nothing about the original content is ever discarded, + only which region of it is currently being shown, exactly the same + principle setTransparentColor() already follows for its own choices. + Recomputes pixmap_ via computeDisplayPixmap() so any already-picked + transparent colours are correctly re-applied to the newly-cropped + region, rather than lost (the crop dialog itself knows nothing + about them). + + pos() also needs adjusting, not just pixmap_: setPixmap() (called + via the "pixmap" undo command below) recomputes + transformOriginPoint() from the new boundingRect(), but pos() itself + is untouched by that -- without fixing it up here too, the + surviving content would visually jump to wherever local (0,0) ends + up after the crop rect changes, rather than staying exactly where + it already was. This has to work whether this is the first crop + ever applied or an adjustment of an existing one, so the position + math is always done relative to the CURRENT crop rect (m_crop_rect, + before it's updated below) -- when there's no previous crop, that's + simply the whole base, which is what the very first version of this + method assumed unconditionally. + + Chained into one undo step together with the pixmap change, since + undoing a crop has to restore both, or the restored (larger) image + ends up in the wrong place. +*/ +void DiagramImageItem::crop() +{ + if (!diagram() || diagram()->isReadOnly()) + return; + + QWidget *parentWidget = diagram()->views().isEmpty() ? nullptr : diagram()->views().first(); + ImageCropDialog dialog(m_base_pixmap, m_crop_rect, parentWidget); + if (dialog.exec() != QDialog::Accepted) + return; + + const QRect newCropRect = dialog.cropRect(); + if (newCropRect.isEmpty() || newCropRect == m_crop_rect) + return; // nothing actually changed + + // newCropRect is in m_base_pixmap's own coordinates; converting its + // center into the CURRENT local space (pixmap_'s own coordinates, + // i.e. relative to the OLD m_crop_rect's own top-left) before + // mapping to the scene through the transform that's still active + // right now, prior to anything below changing it. + const QPointF newCropCenterInCurrentLocal = QRectF(newCropRect).center() - QPointF(m_crop_rect.topLeft()); + const QPointF cropCenterScene = mapToScene(newCropCenterInCurrentLocal); + const QPointF oldPos = pos(); + + const QPixmap oldPixmap = pixmap_; + const QPixmap newPixmap = computeDisplayPixmap(m_base_pixmap, newCropRect, m_transparent_colors, m_transparent_tolerance); + m_crop_rect = newCropRect; + + // boundingRect() is exactly QRectF(pixmap_.rect()) (confirmed by + // reading the actual implementation, not assumed) -- so the new + // origin point can be derived directly from newPixmap here. Unlike + // before this class gained a proper transform, setPixmap() no + // longer manages the pivot automatically at all (see its own + // comment for why) -- crop() now has to set it explicitly itself, + // chained into the same undo step as the pixmap and position + // changes, since all three genuinely change together here. + const QPointF oldPivot = m_transform.pivot; + const QPointF newOriginPoint = QRectF(newPixmap.rect()).center(); + const QPointF newPos = cropCenterScene - newOriginPoint; + + auto *undo = new QPropertyUndoCommand(this, "pixmap", oldPixmap, newPixmap); + undo->setText(tr("Rogner une image")); + new QPropertyUndoCommand(this, "pos", oldPos, newPos, undo); + new QPropertyUndoCommand(this, "rawPivot", oldPivot, newOriginPoint, undo); + m_pivotIsCustom = false; + diagram()->undoStack().push(undo); +} diff --git a/sources/qetgraphicsitem/diagramimageitem.h b/sources/qetgraphicsitem/diagramimageitem.h index f983eb3b5..f59d419e1 100644 --- a/sources/qetgraphicsitem/diagramimageitem.h +++ b/sources/qetgraphicsitem/diagramimageitem.h @@ -19,9 +19,16 @@ #define DIAGRAM_IMAGE_ITEM_H #include "qetgraphicsitem.h" +#include "shapetransform.h" + +#include <QColor> +#include <QList> +#include <QVector> class QDomElement; class QDomDocument; +class QGraphicsSceneContextMenuEvent; +class QetGraphicsHandlerItem; /** This class represents a selectable, movable and editable image on a @@ -30,6 +37,23 @@ class QDomDocument; */ class DiagramImageItem : public QetGraphicsItem { Q_OBJECT + Q_PROPERTY(QPixmap pixmap READ pixmap WRITE setPixmap NOTIFY pixmapChanged) + Q_PROPERTY(qreal scaleFactorX READ scaleFactorX WRITE setScaleFactorX NOTIFY transformChanged) + Q_PROPERTY(qreal scaleFactorY READ scaleFactorY WRITE setScaleFactorY NOTIFY transformChanged) + Q_PROPERTY(qreal rotationAngle READ rotationAngle WRITE setRotationAngle NOTIFY transformChanged) + Q_PROPERTY(qreal skewX READ skewX WRITE setSkewX NOTIFY transformChanged) + Q_PROPERTY(qreal skewY READ skewY WRITE setSkewY NOTIFY transformChanged) + Q_PROPERTY(QPointF pivot READ pivot WRITE setPivot NOTIFY transformChanged) + // A second, deliberately non-compensating property on the SAME + // underlying value -- setPivot() (above) intentionally adjusts + // pos() to keep the image visually in place, which is exactly + // wrong for crop()'s own undo chain: crop() already computes the + // correct final pos() itself (accounting for the crop, not just + // the pivot move) and pushes it as its own separate "pos" command, + // so a chained "pivot" step going through the compensating setter + // would silently overwrite that already-correct pos() a second + // time. rawPivot exists solely for that one caller. + Q_PROPERTY(QPointF rawPivot READ pivot WRITE setPivotRaw NOTIFY transformChanged) // constructors, destructor public: @@ -40,6 +64,19 @@ class DiagramImageItem : public QetGraphicsItem { // attributes public: enum { Type = UserType + 1007 }; + + // A deliberately smaller, image-specific set than QetShapeItem's own + // HandleMode/HandleRole: images have no path/polygon/arc concepts at + // all, so reusing those enums directly would pull in a great deal of + // irrelevant baggage for no benefit. RotateSkew's math (rotate, + // skew, and their shared scaleAndShearOffset()/scaleOnlyOffset() + // helpers) mirrors QetShapeItem's own identical formulas -- adapted + // to this class's own, simpler 4-corner/4-edge/1-pivot handle set, + // not shared code, since the two classes' broader handle roles + // differ too much (no path/polygon/arc concepts here) for sharing + // the dispatcher itself to be worth an indirect abstraction. + enum class HandleMode { Size, RotateSkew }; + enum class HandleRole { Resize, Rotate, SkewEdge, Pivot }; // methods public: @@ -54,13 +91,108 @@ class DiagramImageItem : public QetGraphicsItem { virtual QDomElement toXml(QDomDocument &) const; void editProperty() override; void setPixmap(const QPixmap &pixmap); + QPixmap pixmap() const { return pixmap_; } QRectF boundingRect() const override; QString name() const override; - + + qreal scaleFactorX() const { return m_transform.scaleX; } + qreal scaleFactorY() const { return m_transform.scaleY; } + void setScaleFactorX(qreal factor); + void setScaleFactorY(qreal factor); + qreal rotationAngle() const { return m_transform.rotation; } + void setRotationAngle(qreal angle); + qreal skewX() const { return m_transform.skewX; } + void setSkewX(qreal skew); + qreal skewY() const { return m_transform.skewY; } + void setSkewY(qreal skew); + QPointF pivot() const { return m_transform.pivot; } + void setPivot(const QPointF &pivot); + void setPivotRaw(const QPointF &pivot); + + signals: + void pixmapChanged(); + void transformChanged(); + protected: void paint(QPainter *, const QStyleOptionGraphicsItem *, QWidget *) override; - + void contextMenuEvent(QGraphicsSceneContextMenuEvent *event) override; + void mousePressEvent(QGraphicsSceneMouseEvent *event) override; + void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override; + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override; + bool sceneEventFilter(QGraphicsItem *watched, QEvent *event) override; + QVariant itemChange(GraphicsItemChange change, const QVariant &value) override; + + private: + void replaceImage(); + void mirror(bool horizontal); + void setTransparentColor(); + void crop(); + void restoreAspectRatio(); + static QPixmap computeDisplayPixmap(const QPixmap &base, const QRect &cropRect, const QList<QColor> &colors, int tolerance); + + void toggleHandleMode(); + HandleMode nextHandleMode() const; + static QString handleModeLabel(HandleMode mode); + void updateModeHint(); + void refreshInteractionHints(); + QString currentModeStatusHint() const; + void rebuildHandles(); + void repositionHandles(); + void clearHandles(); + void resetPivotToBoundingRectCenter(); + void handlerMousePressEvent(int index, Qt::KeyboardModifiers mods); + void handlerMouseMoveEvent(int index, QGraphicsSceneMouseEvent *event); + void handlerMouseReleaseEvent(int index); + void dragResize(int index, const QPointF &localPos, Qt::KeyboardModifiers mods); + void dragRotateHandle(int cornerIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods); + void dragSkewHandle(int edgeIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods); + void dragPivot(const QPointF &localPos); + QPointF scaleOnlyOffset(const QPointF &localPoint) const; + QPointF scaleAndShearOffset(const QPointF &localPoint) const; + QPointF handlePosition(int index) const; + static QPointF cornerPosition(int cornerIndex, qreal w, qreal h); + static QPointF edgeMidpointPosition(int edgeIndex, qreal w, qreal h); + static QColor colorForHandleRole(HandleRole role); + static QString hintForHandleRole(HandleRole role); + void showStatusHint(const QString &text) const; + void clearStatusHint() const; + protected: QPixmap pixmap_; + // The true, pristine original -- never itself cropped or colour- + // keyed. pixmap_ (the displayed result) is always re-derived from + // this plus m_crop_rect and m_transparent_colors/tolerance, via + // computeDisplayPixmap(). Without keeping this separate, re-opening + // either the crop or transparency dialog after using the other + // would show an already-modified image as if it were the source -- + // areas already cropped away or coloured out would be gone for + // good, with no way to recover or adjust them, only start over. + // Updated by whatever genuinely replaces or reorients the image's + // actual content (construction, replaceImage(), and mirror(), which + // also mirrors m_crop_rect to keep referring to the same region of + // the now-flipped base) -- never by crop() or setTransparentColor() + // themselves, which only ever change which subset of this base is + // shown. + QPixmap m_base_pixmap; + QRect m_crop_rect; // relative to m_base_pixmap; equals m_base_pixmap.rect() when nothing has been cropped + QList<QColor> m_transparent_colors; + int m_transparent_tolerance = 10; + + // Independent scaleX/scaleY here is the actual point of this whole + // member: QGraphicsItem::scale() is a single, uniform float, which + // is exactly why an image could never break its own aspect ratio + // before this. skewX/skewY exist in the struct but are never + // written by anything below -- deliberately deferred, not an + // oversight (see the .cpp for why). + ShapeTransform m_transform; + bool m_pivotIsCustom = false; + HandleMode m_handleMode = HandleMode::Size; + QVector<QetGraphicsHandlerItem *> m_handler_vector; + QVector<HandleRole> m_handleRoles; + int m_vector_index = -1; + QPointF m_original_pos; // scene position at the start of a resize/rotate/pivot drag, for Escape-to-cancel + ShapeTransform m_original_transform; + bool m_deferHandleReposition = false; // see setPivot()'s comment + bool m_resizeCenterAnchored = false; // decided once, at press time -- see handlerMousePressEvent()'s comment for why, mirroring the identical fix already made for shape creation }; #endif diff --git a/sources/qetgraphicsitem/qetshapeitem.cpp b/sources/qetgraphicsitem/qetshapeitem.cpp index 1fe149ab3..a744cf772 100644 --- a/sources/qetgraphicsitem/qetshapeitem.cpp +++ b/sources/qetgraphicsitem/qetshapeitem.cpp @@ -25,16 +25,28 @@ #include "../diagramview.h" #include "../qet.h" #include "../qeticons.h" +#include "../qetapp.h" +#include "../qetdiagrameditor.h" #include "../qetxml.h" #include "../ui/shapegraphicsitempropertieswidget.h" #include "../utils/qetutils.h" +#include "../undocommand/promoteshapecommand.h" + +#include <QActionGroup> +#include <QCursor> +#include <QMenu> +#include <QStatusBar> +#include <QTimer> +#include <QToolTip> +#include <QtCore/qmath.h> +#include <utility> /** @brief QetShapeItem::QetShapeItem Constructor of shape item. point 1 and 2 must be in scene coordinate @param p1 first point @param p2 second point - @param type type of item (line, rectangle, ellipse) + @param type type of item (line, rectangle, ellipse, polygon, path) @param parent parent item */ QetShapeItem::QetShapeItem(QPointF p1, QPointF p2, ShapeType type, QGraphicsItem *parent) : @@ -48,6 +60,7 @@ QetShapeItem::QetShapeItem(QPointF p1, QPointF p2, ShapeType type, QGraphicsItem setFlags(QGraphicsItem::ItemIsMovable | QGraphicsItem::ItemIsSelectable | QGraphicsItem::ItemSendsGeometryChanges); setAcceptHoverEvents(true); m_pen.setStyle(Qt::SolidLine); + m_transform.pivot = localRect().center(); //ensure handlers are always above this item connect(this, &QetShapeItem::zChanged, [this]() { @@ -61,7 +74,6 @@ QetShapeItem::QetShapeItem(QPointF p1, QPointF p2, ShapeType type, QGraphicsItem m_remove_point = new QAction(tr("Supprimer ce point"), this); m_remove_point->setIcon(QET::Icons::Remove); connect(m_remove_point, &QAction::triggered, this, &QetShapeItem::removePoint); - } QetShapeItem::~QetShapeItem() @@ -115,6 +127,21 @@ void QetShapeItem::setP2(const QPointF &P2) prepareGeometryChange(); m_P2 = P2; } + else + { + return; // nothing actually changed + } + // setP2() is what drives the live "second point under the cursor" + // preview while a new shape is being drawn (see + // diagrameventaddshape.cpp) -- every other geometry setter already + // keeps the pivot following the center until it's customized; this + // one was missing it, which is why a freshly click-and-dragged shape + // could end up with its pivot frozen at the very first click point + // (a degenerate, zero-size starting rect/line) instead of the + // shape's actual center once it was drawn out. + if (!m_pivotIsCustom) + resetPivotToBoundingRectCenter(); + emit geometryChanged(); } /** @@ -129,7 +156,10 @@ bool QetShapeItem::setLine(const QLineF &line) prepareGeometryChange(); m_P1 = line.p1(); m_P2 = line.p2(); - adjustHandlerPos(); + if (!m_pivotIsCustom) + resetPivotToBoundingRectCenter(); + repositionHandles(); + emit geometryChanged(); return true; } @@ -146,7 +176,10 @@ bool QetShapeItem::setRect(const QRectF &rect) prepareGeometryChange(); m_P1 = rect.topLeft(); m_P2 = rect.bottomRight(); - adjustHandlerPos(); + if (!m_pivotIsCustom) + resetPivotToBoundingRectCenter(); + repositionHandles(); + emit geometryChanged(); return true; } @@ -166,18 +199,22 @@ bool QetShapeItem::setPolygon(const QPolygonF &polygon) } prepareGeometryChange(); m_polygon = polygon; - adjustHandlerPos(); + if (!m_pivotIsCustom) + resetPivotToBoundingRectCenter(); + repositionHandles(); + emit geometryChanged(); return true; } /** @brief QetShapeItem::setClosed - Close this item, have effect only if this item is a polygon. + Close this item -- has effect for Polygon and Path only (the two + shape types with a genuine open/closed distinction at all). @param close */ void QetShapeItem::setClosed(bool close) { - if (m_shapeType == Polygon && close != m_closed) + if ((m_shapeType == Polygon || m_shapeType == Path) && close != m_closed) { prepareGeometryChange(); m_closed = close; @@ -189,7 +226,7 @@ void QetShapeItem::setXRadius(qreal X) { m_xRadius = X; update(); - adjustHandlerPos(); + repositionHandles(); emit XRadiusChanged(); } @@ -197,10 +234,204 @@ void QetShapeItem::setYRadius(qreal Y) { m_yRadius = Y; update(); - adjustHandlerPos(); + repositionHandles(); emit YRadiusChanged(); } +/** + @brief QetShapeItem::setRotation + @param degrees + One property per ShapeTransform scalar: every handle (and the + properties panel) touches exactly one of these, never the matrix + directly. See shapetransform.h for why the matrix itself is only ever + built from these, never mutated by hand. +*/ +void QetShapeItem::setRotation(qreal degrees) +{ + if (qFuzzyCompare(m_transform.rotation, degrees)) return; + prepareGeometryChange(); + m_transform.rotation = degrees; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void QetShapeItem::setSkewX(qreal degrees) +{ + if (qFuzzyCompare(m_transform.skewX, degrees)) return; + prepareGeometryChange(); + m_transform.skewX = degrees; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void QetShapeItem::setSkewY(qreal degrees) +{ + if (qFuzzyCompare(m_transform.skewY, degrees)) return; + prepareGeometryChange(); + m_transform.skewY = degrees; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void QetShapeItem::setScaleFactorX(qreal factor) +{ + if (qFuzzyCompare(m_transform.scaleX, factor)) return; + prepareGeometryChange(); + m_transform.scaleX = factor; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +void QetShapeItem::setScaleFactorY(qreal factor) +{ + if (qFuzzyCompare(m_transform.scaleY, factor)) return; + prepareGeometryChange(); + m_transform.scaleY = factor; + setTransform(m_transform.toMatrix()); + emit transformChanged(); +} + +/** + @brief QetShapeItem::setPivot + Move the pivot point. pos() is adjusted at the same time so the shape + never visibly jumps -- see compensatedPositionForNewPivot() in + shapetransform.h for why that adjustment is needed at all. + @param newPivot in local coordinates +*/ +void QetShapeItem::setPivot(const QPointF &newPivot) +{ + if (m_transform.pivot == newPivot) return; + const QPointF newPos = compensatedPositionForNewPivot( + pos(), m_transform.pivot, newPivot, m_transform.linearPart()); + prepareGeometryChange(); + m_transform.pivot = newPivot; + // Apply both related updates, then reposition handles exactly once + // using the fully-updated state. Without this guard, setTransform() + // alone would trigger a reposition using the new transform but the + // still-old pos() (or vice versa if the calls were swapped), which is + // a real, if usually imperceptible, inconsistent intermediate state -- + // removing it outright is cheaper than reasoning about whether it's + // ever visible. + m_deferHandleReposition = true; + setTransform(m_transform.toMatrix()); + // QetGraphicsItem::setPos() (our own base class) silently re-snaps its + // argument to the grid before applying it -- appropriate for an + // ordinary user drag of the whole shape, but wrong here: newPos is an + // exact compensation value derived from rotation trigonometry, so it's + // essentially never grid-aligned, and snapping it introduces real + // rounding error on every single frame of a pivot drag. Over a + // multi-frame drag that accumulates into a clearly visible drift of + // the whole rectangle -- confirmed by simulation: reproducing the + // grid-snap here produced tens of units of drift over a normal drag; + // calling Qt's own, non-snapping setPos() directly produced exactly + // zero. Grid-snapping the *pivot itself* (done earlier, in + // handlerMouseMoveEvent, on the mouse position) is still exactly + // right -- it's only this internal, precision-critical compensation + // step that must bypass it. + QGraphicsItem::setPos(newPos); + m_deferHandleReposition = false; + repositionHandles(); + emit transformChanged(); +} + +void QetShapeItem::resetPivotToBoundingRectCenter() +{ + m_pivotIsCustom = false; + setPivot(localRect().center()); +} + +/** + @brief QetShapeItem::enableNodeEditMode + Switches into NodeEdit mode, so every node's control handles (and + their tangent guide lines drawn in paint()) become visible -- the + same visual feedback normal editing already gets via the context + menu's node-kind actions, made available to the pen tool too so a + node's handles are visible *as they're being dragged into + existence*, not only afterward. +*/ +void QetShapeItem::enableNodeEditMode() +{ + if (m_shapeType != Path) + return; + m_handleMode = HandleMode::NodeEdit; + rebuildHandles(); +} + +/** + @brief QetShapeItem::setStartAngle / setEndAngle + Only meaningful for Ellipse. Dragging one endpoint onto the other + (span within 5 degrees of a full turn) snaps back to a full ellipse -- + this is the whole answer to "how do I turn an arc back into a closed + ellipse": there is no separate Arc type to convert out of. +*/ +// Dragging one endpoint until it nearly touches the other closes the +// ellipse back up -- checked on the *geometric* (mod 360) proximity of +// the two angles, not the raw stored span, since dragArcEndpoint() +// deliberately keeps the raw span continuous/unwrapped (it can legally +// exceed +-360 during a drag) rather than snapping it into a fixed +// range on every frame. +static bool anglesGeometricallyAdjacent(qreal span) +{ + qreal wrapped = std::fmod(span, 360.0); + if (wrapped < 0) wrapped += 360.0; + return wrapped < 5.0 || wrapped > 355.0; +} + +void QetShapeItem::setStartAngle(qreal degrees) +{ + if (qFuzzyCompare(m_startAngle, degrees)) return; + prepareGeometryChange(); + m_startAngle = degrees; + if (anglesGeometricallyAdjacent(spanAngle())) { m_startAngle = 0; m_endAngle = 360; } + repositionHandles(); + emit arcChanged(); +} + +void QetShapeItem::setEndAngle(qreal degrees) +{ + if (qFuzzyCompare(m_endAngle, degrees)) return; + prepareGeometryChange(); + m_endAngle = degrees; + if (anglesGeometricallyAdjacent(spanAngle())) { m_startAngle = 0; m_endAngle = 360; } + repositionHandles(); + emit arcChanged(); +} + +void QetShapeItem::setArcClosure(ArcClosure closure) +{ + if (m_arcClosure == closure) return; + prepareGeometryChange(); + m_arcClosure = closure; + emit arcChanged(); +} + +/** + @brief QetShapeItem::setPathNodes + Replace the node list of a Path shape. Interactive editing of anchors + and control handles both go through the handle roles built by + rebuildHandles() (PathAnchor always visible; PathControlIn/Out for + the active node once double-click enters node-edit mode) -- this + setter itself is just the plain data replacement underneath that. +*/ +void QetShapeItem::setPathNodes(const QVector<PathNode> &nodes) +{ + prepareGeometryChange(); + m_nodes = nodes; + if (!m_pivotIsCustom) + resetPivotToBoundingRectCenter(); + // Always a full rebuild, not just a reposition: unlike the drag + // handlers (dragPathAnchor, dragPathControlHandle), which mutate + // m_nodes in place and are called from a handle's own mouse-move + // event -- where destroying that handle mid-gesture would be a real + // problem -- this setter is only ever called from outside that + // pipeline (currently: the pen tool, adding a new node with every + // click). The node *count* routinely changes here, and + // repositionHandles() has no way to notice that on its own; it only + // moves whatever handles already exist. + rebuildHandles(); + emit geometryChanged(); +} + /** @brief QetShapeItem::pointCount @return the number of point in the polygon @@ -240,7 +471,6 @@ void QetShapeItem::removePoints(int number) i++; prepareGeometryChange(); m_polygon.pop_back(); - setTransformOriginPoint(boundingRect().center()); } while (i < number); } @@ -251,14 +481,49 @@ void QetShapeItem::removePoints(int number) */ QRectF QetShapeItem::boundingRect() const { - return shape().boundingRect().adjusted(-6, -6, 6, 6); + QRectF rect = shape().boundingRect().adjusted(-6, -6, 6, 6); + + if (m_shapeType == Path && m_handleMode == HandleMode::NodeEdit) + { + for (const PathNode &n : m_nodes) + { + if (n.inHandle) + rect |= QRectF(n.anchor, n.anchor + *n.inHandle).normalized().adjusted(-6, -6, 6, 6); + if (n.outHandle) + rect |= QRectF(n.anchor, n.anchor + *n.outHandle).normalized().adjusted(-6, -6, 6, 6); + } + } + + return rect; } /** - @brief QetShapeItem::shape - @return the shape of this item + @brief QetShapeItem::localRect + The rect used for corner/edge handle placement and for arc/radius + math. For Polygon and Path this is the vertex bounding box; for + everything else it is simply the P1/P2 rect, as before. */ -QPainterPath QetShapeItem::shape() const +QRectF QetShapeItem::localRect() const +{ + if (m_shapeType == Polygon) + return m_polygon.boundingRect(); + if (m_shapeType == Path) + { + QPolygonF anchors; + for (const PathNode &n : m_nodes) anchors << n.anchor; + return anchors.boundingRect(); + } + return QRectF(m_P1, m_P2).normalized(); +} + +/** + @brief QetShapeItem::outline + The raw, unstroked path for the current type, in local coordinates. + Shared by shape() (which strokes it for hit-testing/selection) and + paint() (which draws it directly) so the two can never disagree about + what the shape actually looks like. +*/ +QPainterPath QetShapeItem::outline() const { QPainterPath path; @@ -268,29 +533,85 @@ QPainterPath QetShapeItem::shape() const path.moveTo(m_P1); path.lineTo(m_P2); break; + case Rectangle: - path.addRoundedRect( - QRectF(m_P1, m_P2), - m_xRadius, - m_yRadius); + path.addRoundedRect(QRectF(m_P1, m_P2), m_xRadius, m_yRadius); break; + case Ellipse: - path.addEllipse(QRectF(m_P1, m_P2)); + { + const QRectF r(QRectF(m_P1, m_P2)); + if (isFullEllipse()) + { + path.addEllipse(r); + } + else if (m_arcClosure == Pie) + { + path.moveTo(r.center()); + path.arcTo(r, m_startAngle, spanAngle()); + path.closeSubpath(); + } + else + { + path.arcMoveTo(r, m_startAngle); + path.arcTo(r, m_startAngle, spanAngle()); + if (m_arcClosure == Chord) + path.closeSubpath(); + } break; + } + case Polygon: path.addPolygon(m_polygon); if (m_closed) { path.closeSubpath(); } break; + + case Path: + if (!m_nodes.isEmpty()) + { + path.moveTo(m_nodes.first().anchor); + for (int i = 1; i < m_nodes.size(); ++i) + { + const PathNode &prev = m_nodes.at(i - 1); + const PathNode &cur = m_nodes.at(i); + if (prev.outHandle || cur.inHandle) + path.cubicTo( + prev.anchor + prev.outHandle.value_or(QPointF()), + cur.anchor + cur.inHandle.value_or(QPointF()), + cur.anchor); + else + path.lineTo(cur.anchor); + } + if (m_closed && m_nodes.size() > 1) + { + const PathNode &last = m_nodes.last(); + const PathNode &first = m_nodes.first(); + if (last.outHandle || first.inHandle) + path.cubicTo( + last.anchor + last.outHandle.value_or(QPointF()), + first.anchor + first.inHandle.value_or(QPointF()), + first.anchor); + path.closeSubpath(); + } + } + break; } + return path; +} + +/** + @brief QetShapeItem::shape + @return the shape of this item +*/ +QPainterPath QetShapeItem::shape() const +{ QPainterPathStroker pps; pps.setWidth(m_hovered? m_pen.widthF()+10 : m_pen.widthF()); pps.setJoinStyle(Qt::RoundJoin); - path = pps.createStroke(path); - - return (path); + return pps.createStroke(outline()); } /** @@ -325,15 +646,88 @@ void QetShapeItem::paint( painter -> restore (); } - switch (m_shapeType) + painter->drawPath(outline()); + + // Segment midpoint markers: a small, distinct diamond at the middle + // of every segment -- straight or already curved -- shown only in + // NodeEdit mode. Purely a discoverability aid: a straight run + // between two Corner nodes otherwise gives no visual hint at all + // that it's draggable (see mousePressEvent()'s curve-drag + // detection), which is exactly what made that interaction easy to + // miss. Deliberately *not* a real handle -- the actual drag already + // works from anywhere along the segment via nearestPathSegment(), + // not just this exact point, and turning the marker into its own + // discrete hit target would only narrow that back down. Diamond + // shape and a muted colour distinguish it at a glance from the + // round, brighter anchor/control dots, which are real handles. + // Drawn before the guide lines/handles on purpose, so those stay + // visually on top of this rather than the reverse. + if (m_shapeType == Path && m_handleMode == HandleMode::NodeEdit) { - case Line: painter->drawLine(QLineF(m_P1, m_P2)); break; - case Rectangle: painter->drawRoundedRect(QRectF(m_P1, m_P2), - m_xRadius, - m_yRadius); break; - case Ellipse: painter->drawEllipse(QRectF(m_P1, m_P2)); break; - case Polygon: m_closed ? painter->drawPolygon(m_polygon) - : painter->drawPolyline(m_polygon); break; + const int count = m_nodes.size(); + const int segments = m_closed ? count : count - 1; + if (segments > 0) + { + painter->save(); + QPen markerPen(QColor(180, 120, 40)); + markerPen.setWidthF(1.2); + markerPen.setCosmetic(true); + painter->setPen(markerPen); + painter->setBrush(QColor(255, 210, 130, 200)); + + for (int i = 0; i < segments; ++i) + { + const PathNode &a = m_nodes.at(i); + const PathNode &b = m_nodes.at((i + 1) % count); + const QPointF p0 = a.anchor; + const QPointF p1 = a.anchor + a.outHandle.value_or(QPointF()); + const QPointF p2 = b.anchor + b.inHandle.value_or(QPointF()); + const QPointF p3 = b.anchor; + + const qreal t = 0.5, u = 0.5; + const QPointF mid = u*u*u*p0 + 3*u*u*t*p1 + 3*u*t*t*p2 + t*t*t*p3; + + const qreal r = 3.5; // half-diagonal, in local units + QPolygonF diamond; + diamond << QPointF(mid.x(), mid.y() - r) + << QPointF(mid.x() + r, mid.y()) + << QPointF(mid.x(), mid.y() + r) + << QPointF(mid.x() - r, mid.y()); + painter->drawPolygon(diamond); + } + painter->restore(); + } + } + + // Tangent guide lines: connects each visible control handle back to + // its anchor, for every node that has any -- deliberately not + // filtered down to "just one node" (see the header's HandleMode + // comment): for the small, decorative curves this editor actually + // deals with, seeing every handle at once removes a click's worth of + // friction per node, and is worth the trade-off even if it would get + // busy on a much larger, hand-traced path. + // Cosmetic on purpose, unlike the shape's own stroke: this is a UI + // aid, not artwork, so it should stay a constant screen width + // regardless of zoom or the shape's own skew -- the same reasoning + // that already makes the handle dots themselves ItemIgnoresTransformations. + if (m_shapeType == Path && m_handleMode == HandleMode::NodeEdit) + { + for (const PathNode &n : m_nodes) + { + if (!n.inHandle && !n.outHandle) + continue; + painter->save(); + QPen guidePen(QColor(120, 120, 120)); + guidePen.setStyle(Qt::DashLine); + guidePen.setWidthF(1.0); + guidePen.setCosmetic(true); + painter->setPen(guidePen); + if (n.inHandle) + painter->drawLine(n.anchor, n.anchor + *n.inHandle); + if (n.outHandle) + painter->drawLine(n.anchor, n.anchor + *n.outHandle); + painter->restore(); + } } painter->restore(); @@ -347,6 +741,7 @@ void QetShapeItem::paint( void QetShapeItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event) { m_hovered = true; + refreshInteractionHints(); QetGraphicsItem::hoverEnterEvent(event); } @@ -358,20 +753,132 @@ void QetShapeItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event) void QetShapeItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) { m_hovered = false; + clearStatusHint(); QetGraphicsItem::hoverLeaveEvent(event); } +/** + @brief QetShapeItem::mousePressEvent + A left click on an *already selected* shape (without having dragged) + toggles between the Size and RotateSkew handle sets -- the same + convention LibreOffice Draw and PowerPoint use. A click that performs + the selection itself does not toggle, so selecting a shape always + starts in Size mode. +*/ void QetShapeItem::mousePressEvent(QGraphicsSceneMouseEvent *event) { + // Grabbing the curve itself (not a handle -- those are separate + // QetGraphicsHandlerItems and take precedence automatically, since + // Qt only delivers this event here when the click missed all of + // them) reshapes the segment under the cursor -- but only once the + // press actually turns into a drag. A plain click here (press+release + // with no real movement) is exactly the same gesture that cycles the + // handle mode elsewhere, and NodeEdit mode's own click-on-the-curve + // hit-test matches almost any click that landed on the shape at all + // -- so deciding "reshape vs. cycle" at press time would make it + // impossible to ever click onward to RotateSkew once in NodeEdit. + // Deferred to mouseMoveEvent/mouseReleaseEvent instead, below. + if (m_shapeType == Path && m_handleMode == HandleMode::NodeEdit && event->button() == Qt::LeftButton) + { + const auto hit = nearestPathSegment(event->pos()); + if (hit.first >= 0) + { + const int count = m_nodes.size(); + const PathNode &a = m_nodes.at(hit.first); + const PathNode &b = m_nodes.at((hit.first + 1) % count); + m_curveDragSegment = hit.first; + m_curveDragT = hit.second; + m_curveDragOriginalP1 = a.anchor + a.outHandle.value_or(QPointF()); + m_curveDragOriginalP2 = b.anchor + b.inHandle.value_or(QPointF()); + m_curveDragPressPos = event->pos(); + m_curveDragEngaged = false; + m_old_nodes = m_nodes; + event->accept(); + return; + } + } + + const bool wasAlreadySelected = isSelected(); event->ignore(); QetGraphicsItem::mousePressEvent(event); - if (event->button() == Qt::LeftButton) { - switchResizeMode(); + if (event->button() == Qt::LeftButton) + { + if (wasAlreadySelected && isSelected()) + toggleHandleMode(); event->accept(); } } +/** + @brief QetShapeItem::mouseMoveEvent + Only ever does something different from the base class while a + curve-segment drag (started in mousePressEvent above) is pending or + active; otherwise this is exactly QetGraphicsItem's own whole-shape- + move handling (grid-snapped drag, multi-selection movement via + diagram()->elementsMover()), untouched. +*/ +void QetShapeItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event) +{ + if (m_curveDragSegment >= 0) + { + if (!m_curveDragEngaged) + { + if (QLineF(m_curveDragPressPos, event->pos()).length() < 3.0) + return; // still just a (so far) plain click -- wait and see, don't reshape yet + m_curveDragEngaged = true; + } + + QPointF scenePos = event->scenePos(); + if (!(event->modifiers() & Qt::ControlModifier)) + scenePos = Diagram::snapToGrid(scenePos); + dragCurveSegment(m_curveDragSegment, m_curveDragT, mapFromScene(scenePos)); + event->accept(); + return; + } + QetGraphicsItem::mouseMoveEvent(event); +} + +/** + @brief QetShapeItem::mouseReleaseEvent + If the press in mousePressEvent never turned into a real drag, this + was just a plain click -- cycle the handle mode, exactly like a click + anywhere else on an already-selected shape would. Otherwise commit + the curve-drag's undo entry, reusing the same generic before/after + XML snapshot mechanism as every other Path edit. With no curve-drag + pending at all, this defers entirely to QetGraphicsItem's own release + handling (which ends the whole-shape-move gesture via elementsMover()). +*/ +void QetShapeItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) +{ + if (m_curveDragSegment >= 0) + { + if (m_curveDragEngaged) + { + if (m_nodes != m_old_nodes && diagram()) + { + const QVector<PathNode> after = m_nodes; + m_nodes = m_old_nodes; + const QDomElement before = snapshotXml(); + m_nodes = after; + const QDomElement afterXml = snapshotXml(); + auto *undo = new PromoteShapeCommand(this, before, afterXml); + undo->setText(tr("Déformer une courbe")); + diagram()->undoStack().push(undo); + } + } + else + { + toggleHandleMode(); + } + m_curveDragSegment = -1; + m_curveDragEngaged = false; + event->accept(); + return; + } + QetGraphicsItem::mouseReleaseEvent(event); +} + /** @brief QetShapeItem::itemChange @param change @@ -384,8 +891,8 @@ QVariant QetShapeItem::itemChange(QGraphicsItem::GraphicsItemChange change, if (change == ItemSelectedHasChanged) { if (value.toBool() == true) { - //If this is selected, wa add handlers. - addHandler(); + //If this is selected, we add handlers. + rebuildHandles(); } else //Else this is deselected, we remove handlers { @@ -393,12 +900,22 @@ QVariant QetShapeItem::itemChange(QGraphicsItem::GraphicsItemChange change, { qDeleteAll(m_handler_vector); m_handler_vector.clear(); + m_handleRoles.clear(); + m_handleSlot.clear(); } - m_resize_mode = 1; + // Same reasoning as toggleHandleMode(): resetting the mode + // changes boundingRect()'s coverage, so Qt needs to be told + // before it happens, not after -- this is exactly the path + // that left a stale guide line behind when deselecting a + // Path with a far-dragged handle still active. + prepareGeometryChange(); + m_handleMode = HandleMode::Size; } + refreshInteractionHints(); } - else if (change == ItemPositionHasChanged) { - adjustHandlerPos(); + else if (change == ItemPositionHasChanged || change == ItemTransformHasChanged) { + if (!m_deferHandleReposition) + repositionHandles(); } else if (change == ItemSceneHasChanged) { @@ -431,19 +948,38 @@ bool QetShapeItem::sceneEventFilter(QGraphicsItem *watched, QEvent *event) { if(event->type() == QEvent::GraphicsSceneMousePress) //Click { - handlerMousePressEvent(); + handlerMousePressEvent(m_vector_index); return true; } else if(event->type() == QEvent::GraphicsSceneMouseMove) //Move { - handlerMouseMoveEvent(static_cast<QGraphicsSceneMouseEvent *>(event)); + handlerMouseMoveEvent(m_vector_index, static_cast<QGraphicsSceneMouseEvent *>(event)); return true; } else if (event->type() == QEvent::GraphicsSceneMouseRelease) //Release { - handlerMouseReleaseEvent(); + handlerMouseReleaseEvent(m_vector_index); return true; } + else if (event->type() == QEvent::GraphicsSceneHoverEnter) + { + // Handle-specific status bar text, on top of the + // tooltip Qt shows natively from the handle's own + // setToolTip() (see rebuildHandles()) -- returning + // false leaves that native tooltip handling alone. + showStatusHint(handleRoleTooltip(m_handleRoles.value(m_vector_index), m_handleSlot.value(m_vector_index))); + return false; + } + else if (event->type() == QEvent::GraphicsSceneHoverLeave) + { + // Falls back to the shape's own general hint (if the + // cursor is still over the shape's body overall) + // rather than clearing outright -- leaving one + // handle's small hit area shouldn't blank the status + // bar if you're still hovering the shape itself. + refreshInteractionHints(); + return false; + } } } } @@ -459,7 +995,10 @@ void QetShapeItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) { m_context_menu_pos = event->pos(); - if (m_shapeType == QetShapeItem::Polygon) + const bool canConvertToPath = (m_shapeType == Rectangle || m_shapeType == Ellipse); + + if (m_shapeType == QetShapeItem::Polygon || m_shapeType == QetShapeItem::Path + || m_shapeType == QetShapeItem::Line || canConvertToPath) { if (diagram()->selectedItems().isEmpty()) { this->setSelected(true); @@ -483,20 +1022,94 @@ void QetShapeItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) if (d_view) { QScopedPointer<QMenu> menu(new QMenu()); - menu.data()->addAction(m_insert_point); - if (m_handler_vector.count() > 2) + if (m_shapeType == QetShapeItem::Polygon) { - for (QetGraphicsHandlerItem *qghi : m_handler_vector) + menu.data()->addAction(m_insert_point); + + if (m_handler_vector.count() > 2) { - if (qghi->contains(qghi->mapFromScene(event->scenePos()))) + for (QetGraphicsHandlerItem *qghi : m_handler_vector) { - menu.data()->addAction(m_remove_point); - break; + if (qghi->contains(qghi->mapFromScene(event->scenePos()))) + { + menu.data()->addAction(m_remove_point); + break; + } } } } + if (m_shapeType == QetShapeItem::Path && !m_nodes.isEmpty()) + { + // Nearest node to the click, not "whichever tiny + // handle you managed to hit exactly" -- the latter + // is finicky for a right-click (no drag feedback + // to correct your aim), and silently found nothing + // once NodeEdit mode added PathControlIn/Out + // handles right next to the anchor, which this + // menu never checked for. + const QPointF localClick = mapFromScene(event->scenePos()); + int nearest = 0; + qreal bestDist = -1; + for (int i = 0; i < m_nodes.size(); ++i) + { + const QPointF d = m_nodes.at(i).anchor - localClick; + const qreal dist = d.x() * d.x() + d.y() * d.y(); + if (bestDist < 0 || dist < bestDist) { bestDist = dist; nearest = i; } + } + + const std::pair<int, qreal> segmentHit = nearestPathSegment(localClick); + if (segmentHit.first >= 0) + { + const int seg = segmentHit.first; + const qreal t = segmentHit.second; + QAction *insertAct = menu.data()->addAction(tr("Ajouter un point")); + connect(insertAct, &QAction::triggered, this, [this, seg, t]() { insertPathPoint(seg, t); }); + } + + QMenu *nodeMenu = menu.data()->addMenu(tr("Nœud le plus proche")); + QAction *toSmooth = nodeMenu->addAction(tr("Lisse")); + QAction *toSymmetric = nodeMenu->addAction(tr("Symétrique")); + QAction *toCorner = nodeMenu->addAction(tr("Anguleux")); + + auto *group = new QActionGroup(nodeMenu); + for (QAction *a : {toSmooth, toSymmetric, toCorner}) + { + a->setCheckable(true); + a->setActionGroup(group); + } + const NodeKind currentKind = m_nodes.at(nearest).kind; + toSmooth->setChecked(currentKind == NodeKind::Smooth); + toSymmetric->setChecked(currentKind == NodeKind::Symmetric); + toCorner->setChecked(currentKind == NodeKind::Corner); + + connect(toSmooth, &QAction::triggered, this, [this, nearest]() { setNodeKind(nearest, NodeKind::Smooth); }); + connect(toSymmetric, &QAction::triggered, this, [this, nearest]() { setNodeKind(nearest, NodeKind::Symmetric); }); + connect(toCorner, &QAction::triggered, this, [this, nearest]() { setNodeKind(nearest, NodeKind::Corner); }); + + if (m_nodes.size() > 2) + { + QAction *removeAct = menu.data()->addAction(tr("Supprimer le nœud le plus proche")); + connect(removeAct, &QAction::triggered, this, [this, nearest]() { removePathPoint(nearest); }); + } + } + + if (canConvertToPath) + { + QAction *convert = menu.data()->addAction(tr("Convertir en polyligne")); + connect(convert, &QAction::triggered, this, &QetShapeItem::convertToPathExplicitly); + } + + QAction *mirrorH = menu.data()->addAction(tr("Miroir horizontal")); + QAction *mirrorV = menu.data()->addAction(tr("Miroir vertical")); + connect(mirrorH, &QAction::triggered, this, [this]() { mirror(true); }); + connect(mirrorV, &QAction::triggered, this, [this]() { mirror(false); }); + + menu.data()->addSeparator(); + QAction *properties = menu.data()->addAction(tr("Propriétés...")); + connect(properties, &QAction::triggered, this, &QetShapeItem::editProperty); + menu.data()->addSeparator(); menu.data()->addActions(d_view->contextMenuActions()); menu.data()->exec(event->screenPos()); @@ -511,148 +1124,562 @@ void QetShapeItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) } /** - @brief QetShapeItem::switchResizeMode + @brief QetShapeItem::toggleHandleMode + Cycled by clicking an already-selected shape: Size -> Corner -> + RotateSkew -> Size for Rectangle (the only type with a corner-radius + concept); Size -> RotateSkew -> Size for everything else, skipping the + Corner state entirely rather than showing an empty/meaningless one. */ -void QetShapeItem::switchResizeMode() +/** + @brief QetShapeItem::nextHandleMode + What clicking an already-selected shape switches to from the current + mode -- the single source of truth for the cycle order, shared by + toggleHandleMode() (which acts on it) and updateModeHint() (which + just describes it). +*/ +QetShapeItem::HandleMode QetShapeItem::nextHandleMode() const { - if (m_shapeType == Ellipse) + if (m_shapeType == Rectangle) { - if (m_resize_mode == 1) - { - m_resize_mode = 2; - for (QetGraphicsHandlerItem *qghi : m_handler_vector) { - qghi->setColor(Qt::darkGreen); + if (m_handleMode == HandleMode::Size) return HandleMode::Corner; + if (m_handleMode == HandleMode::Corner) return HandleMode::RotateSkew; + return HandleMode::Size; + } + if (m_shapeType == Path) + { + if (m_handleMode == HandleMode::Size) return HandleMode::NodeEdit; + if (m_handleMode == HandleMode::NodeEdit) return HandleMode::RotateSkew; + return HandleMode::Size; + } + return (m_handleMode == HandleMode::Size) ? HandleMode::RotateSkew : HandleMode::Size; +} + +void QetShapeItem::toggleHandleMode() +{ + // Changing m_handleMode changes what boundingRect() covers (it only + // includes nodes' guide-line extents while in NodeEdit mode) -- + // without this, leaving NodeEdit with a far-flung handle would leave + // a rendering ghost behind, the same class of bug already fixed + // elsewhere for other state changes that affect boundingRect(). + prepareGeometryChange(); + m_handleMode = nextHandleMode(); + rebuildHandles(); + refreshInteractionHints(); +} + +/** + @brief QetShapeItem::handleModeLabel + Short, human name for a HandleMode -- used to build both the tooltip + ("click: switches to X") and, indirectly, the status bar text. +*/ +QString QetShapeItem::handleModeLabel(HandleMode mode) +{ + switch (mode) + { + case HandleMode::Size: return tr("Taille"); + case HandleMode::Corner: return tr("Coins arrondis"); + case HandleMode::NodeEdit: return tr("Édition des nœuds"); + case HandleMode::RotateSkew: return tr("Rotation/Inclinaison"); + } + return QString(); +} + +/** + @brief QetShapeItem::updateModeHint + Keeps the tooltip in sync with what the next click would do -- called + on selection change (so it appears/disappears with the handles + themselves) and after every mode switch. Deliberately short: this is + a tooltip, not documentation -- the fuller gesture/modifier reference + lives in the status bar instead (see currentModeStatusHint(), + hoverEnterEvent()), which has room for it without popping up + uninvited. +*/ +void QetShapeItem::updateModeHint() +{ + setToolTip(isSelected() + ? tr("Cliquer : mode %1").arg(handleModeLabel(nextHandleMode())) + : QString()); +} + +/** + @brief QetShapeItem::refreshInteractionHints + Keeps the tooltip text current, and -- if the shape is already being + hovered -- immediately re-shows both the tooltip and the status bar + hint rather than leaving them stuck on whatever was true before. + Needed because Qt only re-evaluates a tooltip, and this class only + re-shows the status bar, when the cursor *moves*: selecting a shape + (often clicked while the mouse was already sitting on it) or cycling + handle modes (definitely clicked while sitting on it) both change + what should be shown without the cursor moving at all, so without + this both would appear stale until the user moved away and back. +*/ +void QetShapeItem::refreshInteractionHints() +{ + updateModeHint(); + + if (!m_hovered || !isSelected()) + return; + + const QString status = currentModeStatusHint(); + const QString tip = toolTip(); + + // Deferred to the next event-loop iteration rather than shown + // immediately: this is called from within the same mousePressEvent + // that changed the mode, and Qt hides any visible tooltip as part of + // its own click handling -- racing an immediate re-show against that + // is exactly what made the tooltip appear inconsistently. Letting + // Qt's own click handling finish first, then re-showing, is the + // standard fix for this class of "act after the current event has + // settled" timing problem. Re-checks hover/selection on firing since + // they're cheap and the world could in principle have changed in the + // meantime, however unlikely at a zero-millisecond delay. + QTimer::singleShot(0, this, [this, status, tip]() + { + if (!m_hovered || !isSelected()) + return; + showStatusHint(status); + if (!tip.isEmpty()) + QToolTip::showText(QCursor::pos(), tip); + }); +} + +void QetShapeItem::showStatusHint(const QString &text) const +{ + if (text.isEmpty() || !diagram() || diagram()->views().isEmpty()) + return; + if (auto *editor = QETApp::diagramEditorAncestorOf(diagram()->views().constFirst())) + editor->statusBar()->showMessage(text); +} + +void QetShapeItem::clearStatusHint() const +{ + if (!diagram() || diagram()->views().isEmpty()) + return; + if (auto *editor = QETApp::diagramEditorAncestorOf(diagram()->views().constFirst())) + editor->statusBar()->clearMessage(); +} + +/** + @brief QetShapeItem::currentModeStatusHint + One-line reference for whatever handles are visible right now, + shown in the status bar while hovering a selected shape's body (see + hoverEnterEvent()) -- the modifier keys in particular (Ctrl, Shift, + Alt) have no other visible indication that they do anything at all. + Also carries the same "next mode" information as the tooltip, since + the status bar has room for the full picture in one place rather + than needing the tooltip read separately. +*/ +QString QetShapeItem::currentModeStatusHint() const +{ + QString hint; + switch (m_handleMode) + { + case HandleMode::Size: + if (m_shapeType == Rectangle || m_shapeType == Ellipse) + { + hint = tr("Glisser un coin/bord : redimensionner " + "(Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)"); + if (m_shapeType == Ellipse) + hint += tr(" ; point turquoise : arc"); } - } - else - { - m_resize_mode = 1; - for (QetGraphicsHandlerItem *qghi : m_handler_vector) { - qghi->setColor(Qt::blue); + else if (m_shapeType == Line) + { + hint = tr("Glisser une extrémité : la déplacer"); } + else + { + hint = tr("Glisser un point : le déplacer"); + } + break; + + case HandleMode::Corner: + hint = tr("Glisser le point violet : arrondir les coins"); + break; + + case HandleMode::NodeEdit: + hint = tr("Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; " + "Alt+glisser un point anguleux : créer des poignées ; " + "clic droit : menu du nœud le plus proche"); + break; + + case HandleMode::RotateSkew: + { + // Only Rectangle/Ellipse actually have SkewEdge handles in + // this mode (see rebuildHandles()) -- Line/Polygon/Path + // don't, so mentioning "un bord : inclinaison" for them + // would describe a handle that doesn't exist. + const QString handleWord = (m_shapeType == Line) ? tr("une extrémité") + : (m_shapeType == Rectangle || m_shapeType == Ellipse) ? tr("un coin") + : tr("un point"); + hint = tr("Glisser %1 : rotation (Maj = 15°)").arg(handleWord); + if (m_shapeType == Rectangle || m_shapeType == Ellipse) + hint += tr(" ; un bord : inclinaison"); + hint += tr(" ; point rouge : glisser pour repositionner le centre de rotation"); + break; } } - else if (m_shapeType == Rectangle) - { - if (m_resize_mode == 1) - { - m_resize_mode = 2; - for (QetGraphicsHandlerItem *qghi : m_handler_vector) - qghi->setColor(Qt::darkGreen); - } - else if (m_resize_mode == 2) - { - m_resize_mode = 3; - qDeleteAll(m_handler_vector); - m_handler_vector.clear(); - addHandler(); - for (QetGraphicsHandlerItem *qghi : m_handler_vector) { - qghi->setColor(Qt::magenta); - } - } - else if (m_resize_mode == 3) - { - m_resize_mode = 1; - qDeleteAll(m_handler_vector); - m_handler_vector.clear(); - addHandler(); - for (QetGraphicsHandlerItem *qghi : m_handler_vector) { - qghi->setColor(Qt::blue); - } + // Mentioned once here rather than repeated in every branch above: + // Ctrl means "free positioning, no grid snap" uniformly for every + // handle and for dragging the curve itself (see + // handlerMouseMoveEvent() and mouseMoveEvent()'s curve-drag branch), + // so it isn't really a property of any one mode. + if (!hint.isEmpty()) + { + hint += tr(" (Ctrl pendant le glissement = position libre, sans accrochage à la grille)"); + hint += tr(" — Cliquer : mode %1").arg(handleModeLabel(nextHandleMode())); + } + + return hint; +} + +/** + @brief QetShapeItem::handleRoleTooltip + Set natively on each handle item in rebuildHandles() -- Qt shows a + handle's own tooltip in preference to the shape's when hovering + directly over it, so this is what gives each handle its own distinct + hint instead of every one of them repeating the shape's general + "click: next mode" tooltip regardless of which handle you're actually + looking at. +*/ +QString QetShapeItem::handleRoleTooltip(HandleRole role, int slot) const +{ + // Ctrl always means "free positioning, no grid snap" here -- checked + // once, uniformly, before any role-specific dispatch even runs (see + // handlerMouseMoveEvent()) -- so it belongs on every one of these, + // not just the handles where it also happens to do something extra + // (Resize's center-anchor). + switch (role) + { + case HandleRole::Resize: + { + // Line's endpoints use this same role but ignore mods + // entirely (see dragResize()'s early-return for Line) -- + // no modifier applies to them at all. + if (m_shapeType == Line) + return tr("Glisser : déplacer ce point"); + QString text = tr("Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions"); + if (isResizeCornerSlot(slot)) + text += tr(", Alt = détacher en polyligne"); + text += ")"; + return text; } + case HandleRole::Rotate: + return tr("Glisser : rotation (Ctrl = position libre, Maj = 15°)"); + case HandleRole::SkewEdge: + return tr("Glisser : inclinaison (Ctrl = position libre, Maj = 15°)"); + case HandleRole::Pivot: + return tr("Glisser : repositionner le centre de rotation (Ctrl = position libre)"); + case HandleRole::CornerRadius: + return tr("Glisser : arrondir les coins (Ctrl = position libre)"); + case HandleRole::ArcEndpoint: + return tr("Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)"); + case HandleRole::PathAnchor: + { + QString text = tr("Glisser : déplacer le point (Ctrl = position libre"); + if (m_shapeType == Path) + text += tr(", Alt = créer des poignées"); + text += ")"; + return text; + } + case HandleRole::PathControlIn: + case HandleRole::PathControlOut: + return tr("Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)"); + } + return QString(); +} + + +/** + @brief QetShapeItem::colorForHandleRole + Purely cosmetic, but consistent with the existing convention of + color-coding what a handle currently does. Mirror-resize used to be + its own colored click-cycled mode (green); it is now a Ctrl modifier + available on every Resize handle, so only genuinely distinct + behaviours get their own color here. +*/ +QColor QetShapeItem::colorForHandleRole(HandleRole role) +{ + switch (role) + { + case HandleRole::Resize: return Qt::blue; + case HandleRole::Rotate: return Qt::darkGreen; + case HandleRole::SkewEdge: return Qt::darkYellow; + case HandleRole::Pivot: return Qt::red; + case HandleRole::CornerRadius: return Qt::magenta; + case HandleRole::ArcEndpoint: return Qt::darkCyan; + case HandleRole::PathAnchor: return Qt::blue; + case HandleRole::PathControlIn: + case HandleRole::PathControlOut:return Qt::gray; + } + return Qt::blue; +} + +QPointF QetShapeItem::cornerPoint(const QRectF &rect, int cornerIndex) +{ + switch (cornerIndex & 3) + { + case 0: return rect.topLeft(); + case 1: return rect.topRight(); + case 2: return rect.bottomRight(); + default: return rect.bottomLeft(); } } -void QetShapeItem::addHandler() +QPointF QetShapeItem::rotateHandleReference(int slot) const { - if (m_handler_vector.isEmpty()) + if (m_shapeType == Line) + return (slot == 0) ? m_P1 : m_P2; + if (m_shapeType == Polygon) + return m_polygon.value(slot); + if (m_shapeType == Path) + return (slot < m_nodes.size()) ? m_nodes.at(slot).anchor : QPointF(); + return cornerPoint(localRect(), slot); +} + +QPointF QetShapeItem::edgeMidpoint(const QRectF &rect, int edgeIndex) +{ + switch (edgeIndex & 3) { - QVector <QPointF> points_vector; - switch (m_shapeType) - { - case Line: - points_vector << m_P1 << m_P2; - break; - case Rectangle: - if (m_resize_mode == 3) { - points_vector = QetGraphicsHandlerUtility::pointForRadiusRect(QRectF(m_P1, m_P2), m_xRadius, m_yRadius); - } - else { - points_vector = QetGraphicsHandlerUtility::pointsForRect(QRectF(m_P1, m_P2)); - } - break; - case Ellipse: - points_vector = QetGraphicsHandlerUtility::pointsForRect(QRectF(m_P1, m_P2)); - break; - case Polygon: - points_vector = m_polygon; - break; - } - - if(!points_vector.isEmpty() && scene()) - { - m_handler_vector = QetGraphicsHandlerItem::handlerForPoint(mapToScene(points_vector), QETUtils::graphicsHandlerSize(this)); - - for(const auto handler : std::as_const(m_handler_vector)) - { - handler->setZValue(this->zValue()+1); - handler->setColor(Qt::blue); - scene()->addItem(handler); - handler->installSceneEventFilter(this); - } - } + case 0: return QPointF(rect.center().x(), rect.top()); + case 1: return QPointF(rect.right(), rect.center().y()); + case 2: return QPointF(rect.center().x(), rect.bottom()); + default: return QPointF(rect.left(), rect.center().y()); } } /** - @brief QetShapeItem::adjustHandlerPos - Adjust the position of the handler item + @brief QetShapeItem::handlePositionFor + Local-coordinate position for one (role, slot) pair, given the + shape's *current* geometry. This is the single source of truth used + both to build handles from scratch (rebuildHandles()) and to move + existing ones during a live drag (repositionHandles()) -- the two + can never disagree about where a handle belongs. */ -void QetShapeItem::adjustHandlerPos() +QPointF QetShapeItem::handlePositionFor(HandleRole role, int slot) const { - if (m_handler_vector.isEmpty()) { - return; - } + const QRectF r = localRect(); - QVector <QPointF> points_vector; - switch (m_shapeType) + switch (role) { - case Line: { - points_vector << m_P1 << m_P2; - break; - } - case Rectangle: { - if (m_resize_mode != 3) { - points_vector = QetGraphicsHandlerUtility::pointsForRect(QRectF(m_P1, m_P2)); - } - else { - points_vector = QetGraphicsHandlerUtility::pointForRadiusRect(QRectF(m_P1, m_P2), m_xRadius, m_yRadius); - } - break; - } - case Ellipse: { - points_vector = QetGraphicsHandlerUtility::pointsForRect(QRectF(m_P1, m_P2)); - break; - } - case Polygon: { - points_vector = m_polygon; - break; - } - } + case HandleRole::Resize: + if (m_shapeType == Line) + return (slot == 0) ? m_P1 : m_P2; + return QetGraphicsHandlerUtility::pointsForRect(r).value(slot); - if (m_handler_vector.size() == points_vector.size()) - { - points_vector = mapToScene(points_vector); - for (int i = 0 ; i < points_vector.size() ; ++i) - m_handler_vector.at(i)->setPos(points_vector.at(i)); + case HandleRole::Rotate: + return rotateHandleReference(slot); + + case HandleRole::SkewEdge: + return edgeMidpoint(r, slot); + + case HandleRole::Pivot: + return m_transform.pivot; + + case HandleRole::CornerRadius: + return QetGraphicsHandlerUtility::pointForRadiusRect(r, m_xRadius, m_yRadius).value(slot); + + case HandleRole::ArcEndpoint: + return QetGraphicsHandlerUtility::pointsForArc(r, m_startAngle, spanAngle()).value(slot); + + case HandleRole::PathAnchor: + if (m_shapeType == Polygon) + return m_polygon.value(slot); + return (slot < m_nodes.size()) ? m_nodes.at(slot).anchor : QPointF(); + + case HandleRole::PathControlIn: + return (slot < m_nodes.size() && m_nodes.at(slot).inHandle) + ? m_nodes.at(slot).anchor + *m_nodes.at(slot).inHandle : QPointF(); + case HandleRole::PathControlOut: + return (slot < m_nodes.size() && m_nodes.at(slot).outHandle) + ? m_nodes.at(slot).anchor + *m_nodes.at(slot).outHandle : QPointF(); } - else + return QPointF(); +} + +QVector<QPointF> QetShapeItem::currentHandlePositions() const +{ + QVector<QPointF> positions; + positions.reserve(m_handleRoles.size()); + for (int i = 0; i < m_handleRoles.size(); ++i) + positions << handlePositionFor(m_handleRoles.at(i), m_handleSlot.at(i)); + return positions; +} + +/** + @brief QetShapeItem::scaleOnlyOffset / scaleAndShearOffset + A local point's offset from the pivot, run through *only* the parts of + the linear transform that are not currently being edited by a drag -- + i.e. the parts that stay fixed while the user is dragging one specific + handle. These are the fixed reference values dragRotateHandle() and + dragSkewHandle() solve against, instead of round-tripping through + mapFromScene() (which would divide out the very parameter being + solved for and turn the drag into a feedback loop -- see + dragRotateHandle()'s comment for the concrete failure mode this + replaces). +*/ +QPointF QetShapeItem::scaleOnlyOffset(const QPointF &localPoint) const +{ + const QPointF offset = localPoint - m_transform.pivot; + return QPointF(offset.x() * m_transform.scaleX, offset.y() * m_transform.scaleY); +} + +QPointF QetShapeItem::scaleAndShearOffset(const QPointF &localPoint) const +{ + const QPointF scaled = scaleOnlyOffset(localPoint); + const qreal kx = qTan(qDegreesToRadians(m_transform.skewX)); + const qreal ky = qTan(qDegreesToRadians(m_transform.skewY)); + return QPointF(scaled.x() + kx * scaled.y(), scaled.y() + ky * scaled.x()); +} + +/** + @brief QetShapeItem::rebuildHandles + (Re)creates the handler items from scratch, for the current + shapeType()/handleMode(). Only called when the *set* of handles + changes -- selection, mode toggle, node count change -- never during + a live drag, since that would delete the very QetGraphicsHandlerItem + currently receiving the mouse-move events. See repositionHandles() + for the drag-safe alternative. +*/ +void QetShapeItem::rebuildHandles() +{ + if (!m_handler_vector.isEmpty()) { qDeleteAll(m_handler_vector); m_handler_vector.clear(); - addHandler(); } + m_handleRoles.clear(); + m_handleSlot.clear(); + + auto addRole = [this](HandleRole role, int slot) { + m_handleRoles << role; + m_handleSlot << slot; + }; + + switch (m_shapeType) + { + case Line: + if (m_handleMode == HandleMode::Size) + { + addRole(HandleRole::Resize, 0); + addRole(HandleRole::Resize, 1); + } + else // RotateSkew: rotate around the pivot; skewing a + // zero-height line isn't a meaningful operation + { + addRole(HandleRole::Rotate, 0); + addRole(HandleRole::Rotate, 1); + addRole(HandleRole::Pivot, 0); + } + break; + + case Rectangle: + case Ellipse: + if (m_handleMode == HandleMode::Size) + { + for (int i = 0; i < 8; ++i) addRole(HandleRole::Resize, i); + } + else if (m_handleMode == HandleMode::Corner) + { + // Rectangle only -- toggleHandleMode() never selects this + // state for Ellipse, so this branch is a no-op for it. + for (int i = 0; i < 2; ++i) addRole(HandleRole::CornerRadius, i); + } + else // RotateSkew + { + for (int i = 0; i < 4; ++i) addRole(HandleRole::Rotate, i); + for (int i = 0; i < 4; ++i) addRole(HandleRole::SkewEdge, i); + addRole(HandleRole::Pivot, 0); + } + if (m_shapeType == Ellipse) + for (int i = 0; i < 2; ++i) addRole(HandleRole::ArcEndpoint, i); + break; + + case Polygon: + if (m_handleMode == HandleMode::Size) + { + for (int i = 0; i < m_polygon.size(); ++i) + addRole(HandleRole::PathAnchor, i); + } + else // RotateSkew: any vertex can be dragged to rotate the + // whole polygon around the pivot; skewing doesn't have + // an obvious "which edge" convention for an arbitrary + // vertex count the way it does for a rectangle's 4 + // fixed edges, so it's left out here too. + { + for (int i = 0; i < m_polygon.size(); ++i) + addRole(HandleRole::Rotate, i); + addRole(HandleRole::Pivot, 0); + } + break; + + case Path: + if (m_handleMode == HandleMode::Size) + { + for (int i = 0; i < m_nodes.size(); ++i) + addRole(HandleRole::PathAnchor, i); + } + else if (m_handleMode == HandleMode::NodeEdit) + { + for (int i = 0; i < m_nodes.size(); ++i) + { + addRole(HandleRole::PathAnchor, i); + const PathNode &n = m_nodes.at(i); + if (n.inHandle) addRole(HandleRole::PathControlIn, i); + if (n.outHandle) addRole(HandleRole::PathControlOut, i); + } + } + else // RotateSkew + { + for (int i = 0; i < m_nodes.size(); ++i) + addRole(HandleRole::Rotate, i); + addRole(HandleRole::Pivot, 0); + } + break; + } + + if (m_handleRoles.isEmpty() || !scene()) + return; + + const QVector<QPointF> positions = currentHandlePositions(); + m_handler_vector = QetGraphicsHandlerItem::handlerForPoint(mapToScene(positions), QETUtils::graphicsHandlerSize(this)); + + for (int i = 0; i < m_handler_vector.size(); ++i) + { + QetGraphicsHandlerItem *h = m_handler_vector.at(i); + h->setZValue(zValue() + 1); + h->setColor(colorForHandleRole(m_handleRoles.at(i))); + h->setToolTip(handleRoleTooltip(m_handleRoles.at(i), m_handleSlot.at(i))); + h->setAcceptHoverEvents(true); + scene()->addItem(h); + h->installSceneEventFilter(this); + } +} + +/** + @brief QetShapeItem::repositionHandles + Moves the *existing* handler items to match current geometry, without + touching their identity or which one is mid-drag. Safe (and expected) + to be called on every frame of a live drag. Falls back to a full + rebuild only if the handle count has somehow drifted out of sync -- + this should not normally happen, since only rebuildHandles() ever + changes m_handleRoles/m_handleSlot. +*/ +void QetShapeItem::repositionHandles() +{ + if (m_handler_vector.isEmpty()) + return; + + const QVector<QPointF> positions = currentHandlePositions(); + if (positions.size() != m_handler_vector.size()) + { + rebuildHandles(); + return; + } + + const QVector<QPointF> scenePositions = mapToScene(positions); + for (int i = 0; i < scenePositions.size(); ++i) + m_handler_vector.at(i)->setPos(scenePositions.at(i)); } void QetShapeItem::insertPoint() @@ -705,17 +1732,754 @@ void QetShapeItem::removePoint() } /** - @brief QetShapeItem::handlerMousePressEvent - @param qghi - @param event + @brief QetShapeItem::snapshotXml + toXml() into a private, throwaway document -- used only to hand a + self-contained QDomElement to PromoteShapeCommand, which deep-clones + it again into its own document anyway (see promoteshapecommand.cpp). */ -void QetShapeItem::handlerMousePressEvent() +QDomElement QetShapeItem::snapshotXml() const { + QDomDocument doc; + QDomElement e = toXml(doc); + doc.appendChild(e); + return e; +} + +/** + @brief QetShapeItem::promoteRectangleOrEllipseToPolygon + Alt+drag on a Resize corner detaches that one vertex, at the moment + the shape stops being a Rectangle/Ellipse and becomes a Polygon. The + prior state (type, geometry, transform, style) is captured by + PromoteShapeCommand so a single Undo restores it exactly -- this fact + never touches the saved .qet file, only the session's undo stack. + @param detachedResizeIndex the Resize-role slot (0,2,5,7 = corners in + QetGraphicsHandlerUtility::pointsForRect's own ordering) being dragged + @param newLocalPos where that corner is being dragged to +*/ +void QetShapeItem::promoteRectangleOrEllipseToPolygon(int detachedResizeIndex, const QPointF &newLocalPos) +{ + const QDomElement before = snapshotXml(); + + QPolygonF corners; + const QRectF r = localRect(); + corners << r.topLeft() << r.topRight() << r.bottomRight() << r.bottomLeft(); + + // pointsForRect corner slots (0,2,5,7) map onto our 0..3 corner order. + static const QHash<int,int> resizeSlotToCorner = {{0,0}, {2,1}, {5,3}, {7,2}}; + const int cornerIndex = resizeSlotToCorner.value(detachedResizeIndex, 0); + corners[cornerIndex] = newLocalPos; + + prepareGeometryChange(); + m_shapeType = Polygon; + m_polygon = corners; + m_closed = true; + + const QDomElement after = snapshotXml(); + + if (diagram()) + { + auto *undo = new PromoteShapeCommand(this, before, after); + diagram()->undoStack().push(undo); + } + + rebuildHandles(); +} + +/** + @brief QetShapeItem::nearestPathSegment + Nearest point on the whole curve to localPos, found by coarse sampling + each segment's cubic Bezier (24 samples is plenty for a context-menu + pick -- this only has to be close enough to feel right, not exact). + Returns {-1, 0} if there are fewer than two nodes to form a segment. +*/ +std::pair<int, qreal> QetShapeItem::nearestPathSegment(const QPointF &localPos) const +{ + const int count = m_nodes.size(); + if (count < 2) + return std::make_pair(-1, 0.0); + + const int segments = m_closed ? count : count - 1; + int bestSegment = -1; + qreal bestT = 0.0; + qreal bestDistSq = -1; + + for (int i = 0; i < segments; ++i) + { + const PathNode &a = m_nodes.at(i); + const PathNode &b = m_nodes.at((i + 1) % count); + const QPointF p0 = a.anchor; + const QPointF p1 = a.anchor + a.outHandle.value_or(QPointF()); + const QPointF p2 = b.anchor + b.inHandle.value_or(QPointF()); + const QPointF p3 = b.anchor; + + const int samples = 24; + for (int s = 0; s <= samples; ++s) + { + const qreal t = qreal(s) / samples; + const qreal u = 1 - t; + const QPointF pt = u*u*u*p0 + 3*u*u*t*p1 + 3*u*t*t*p2 + t*t*t*p3; + const QPointF d = pt - localPos; + const qreal distSq = d.x() * d.x() + d.y() * d.y(); + if (bestDistSq < 0 || distSq < bestDistSq) + { + bestDistSq = distSq; + bestSegment = i; + bestT = t; + } + } + } + return {bestSegment, bestT}; +} + +/** + @brief QetShapeItem::insertPathPoint + Splits the cubic Bezier between node segmentIndex and its successor at + parameter t, via De Casteljau's algorithm -- the two resulting halves + are guaranteed to retrace the original curve exactly (no kink at the + seam), which a naive "just add a point at this position and guess new + handles" approach cannot promise. When neither side of the segment + actually has a handle (a plain straight run between two Corner-ish + points), this degrades to a plain linear split with no handles at all + on the new node, rather than introducing phantom zero-effect handles + on what the user sees as a straight line. +*/ +void QetShapeItem::insertPathPoint(int segmentIndex, qreal t) +{ + const QDomElement before = snapshotXml(); + + prepareGeometryChange(); + const int count = m_nodes.size(); + const int nextIndex = (segmentIndex + 1) % count; + PathNode &a = m_nodes[segmentIndex]; + PathNode &b = m_nodes[nextIndex]; + + const QPointF p0 = a.anchor; + const QPointF p1 = a.anchor + a.outHandle.value_or(QPointF()); + const QPointF p2 = b.anchor + b.inHandle.value_or(QPointF()); + const QPointF p3 = b.anchor; + + PathNode mid; + if (!a.outHandle && !b.inHandle) + { + mid.anchor = p0 + (p3 - p0) * t; + mid.kind = NodeKind::Corner; + } + else + { + const QPointF p01 = p0 + (p1 - p0) * t; + const QPointF p12 = p1 + (p2 - p1) * t; + const QPointF p23 = p2 + (p3 - p2) * t; + const QPointF p012 = p01 + (p12 - p01) * t; + const QPointF p123 = p12 + (p23 - p12) * t; + const QPointF p0123 = p012 + (p123 - p012) * t; + + mid.anchor = p0123; + mid.kind = NodeKind::Smooth; // De Casteljau guarantees tangent continuity through the split point + mid.inHandle = p012 - p0123; + mid.outHandle = p123 - p0123; + + a.outHandle = p01 - p0; + b.inHandle = p23 - p3; + } + + // Insert right before b's current position -- except when the split + // segment is the closed path's wrap-around (last node back to + // first): inserting there at the *end* of the array places the new + // node correctly between old-last and old-first without shifting + // every other node's index. + m_nodes.insert(nextIndex == 0 ? m_nodes.size() : nextIndex, mid); + + const QDomElement after = snapshotXml(); + if (diagram()) + { + auto *undo = new PromoteShapeCommand(this, before, after); + undo->setText(tr("Ajouter un point à une courbe")); + diagram()->undoStack().push(undo); + } + + rebuildHandles(); +} + +/** + @brief QetShapeItem::removePathPoint + Deletes a node outright and lets its two former neighbours connect + directly using their own existing handles -- no attempt to re-fit a + single curve that approximates the old shape through where the point + used to be. That's a much harder (and inherently lossy) problem; this + is the same plain "just delete it" convention most editors default to. +*/ +void QetShapeItem::removePathPoint(int nodeIndex) +{ + if (nodeIndex < 0 || nodeIndex >= m_nodes.size() || m_nodes.size() <= 2) + return; + + const QDomElement before = snapshotXml(); + + prepareGeometryChange(); + m_nodes.removeAt(nodeIndex); + + const QDomElement after = snapshotXml(); + if (diagram()) + { + auto *undo = new PromoteShapeCommand(this, before, after); + undo->setText(tr("Supprimer un point d'une courbe")); + diagram()->undoStack().push(undo); + } + + rebuildHandles(); +} + +void QetShapeItem::convertToPathExplicitly() +{ + if (m_shapeType != Rectangle && m_shapeType != Ellipse) + return; + + const QDomElement before = snapshotXml(); + + QPolygonF corners; + const QRectF r = localRect(); + corners << r.topLeft() << r.topRight() << r.bottomRight() << r.bottomLeft(); + + prepareGeometryChange(); + m_shapeType = Polygon; + m_polygon = corners; + m_closed = true; + + const QDomElement after = snapshotXml(); + + if (diagram()) + { + auto *undo = new PromoteShapeCommand(this, before, after); + undo->setText(tr("Convertir %1 en polyligne").arg(name())); + diagram()->undoStack().push(undo); + } + + rebuildHandles(); +} + +/** + @brief QetShapeItem::mirror + Flips the shape around its own current pivot -- horizontal negates + scaleFactorX, vertical negates scaleFactorY, composing naturally with + whatever rotation/skew are already set rather than needing any + shape-specific geometry logic. Verified numerically before building + this: the full transform (rotation+skew+scale combined) round-trips + exactly under a negative scale just as it does under a positive one, + since a negative-scale matrix is just as invertible (non-zero + determinant) -- and the two interactions that seemed most likely to + break under mirroring turned out not to: dragRotateHandle()'s + angle-solve isn't hardcoded to assume positive scale (it correctly + flips sign for the mirrored case and still tracks the mouse exactly), + and dragArcEndpoint() operates entirely in local space via + mapFromScene(), which is exactly as exact under a mirror as without + one. isResizeCornerSlot() is also unaffected on inspection: it + identifies corners by their fixed *local* index, which mirroring + never changes -- only where those indices end up on screen. +*/ +/** + @brief QetShapeItem::mirror + Flips the shape around its own current pivot. + + The first version of this just negated scaleFactorX/Y directly, + leaving rotation and skew untouched -- correct only when both happen + to already be zero. Reflection doesn't commute with rotation + (reflect . rotate(t) = rotate(-t) . reflect) or with shear, so on + anything already rotated or skewed that version silently reflected + the shape's *original, pre-transform* geometry and then re-applied + the same rotation on top -- visibly changing a line's inclination + instead of mirroring it, exactly as reported. + + Fixed by building the reflection as an actual matrix applied to the + CURRENT linear transform (reflecting the shape's current on-screen + appearance, not its original geometry), then decomposing the result + back into the five scalar fields via decomposeLinear() -- the same + function already used for importing a foreign matrix, applied here + to a structurally identical problem: a matrix exists, scalars that + reproduce it are needed. Verified against the real QTransform and + decomposeLinear() on a shape that was both rotated and skewed before + relying on it here, not just reasoned about abstractly. +*/ +void QetShapeItem::mirror(bool horizontal) +{ + if (!diagram()) + return; + + const QTransform reflect = horizontal + ? QTransform(-1, 0, 0, 1, 0, 0) + : QTransform(1, 0, 0, -1, 0, 0); + const QTransform newLinear = m_transform.linearPart() * reflect; + ShapeTransform candidate = decomposeLinear(newLinear); + candidate.pivot = m_transform.pivot; + + // decomposeLinear() becomes numerically unreliable for very extreme + // skew (found by stress-testing 100k random configurations: solid + // through +/-45 deg, some failures starting around +/-50-60 deg and + // beyond -- a pre-existing limitation of that shared function, not + // something specific to mirroring, but worth guarding against here + // rather than risk silently producing a visibly wrong shape for a + // skew angle far more extreme than normal use would ever reach. + // Verify the decomposition actually reproduces the intended matrix + // before committing to it, rather than trust it unconditionally. + const QTransform rebuilt = candidate.linearPart(); + const qreal err = qMax(qMax(qAbs(rebuilt.m11() - newLinear.m11()), qAbs(rebuilt.m12() - newLinear.m12())), + qMax(qAbs(rebuilt.m21() - newLinear.m21()), qAbs(rebuilt.m22() - newLinear.m22()))); + if (err > 1e-3) + { + if (!diagram()->views().isEmpty()) + { + if (auto *editor = QETApp::diagramEditorAncestorOf(diagram()->views().constFirst())) + editor->statusBar()->showMessage(tr("Miroir impossible : inclinaison trop extrême pour cette forme"), 4000); + } + return; + } + + const QDomElement before = snapshotXml(); + + prepareGeometryChange(); + m_transform = candidate; + setTransform(m_transform.toMatrix()); + emit transformChanged(); + + const QDomElement after = snapshotXml(); + + auto *undo = new PromoteShapeCommand(this, before, after); + undo->setText(horizontal ? tr("Miroir horizontal de %1").arg(name()) : tr("Miroir vertical de %1").arg(name())); + diagram()->undoStack().push(undo); +} + +/** + @brief QetShapeItem::setNodeKind + Change a Path node's kind, via the context menu rather than a drag. + Promoting a Corner node to Smooth or Symmetric synthesizes whichever + handles it doesn't already have, from its neighbours -- direction + toward the far neighbour, length a third of the distance to the near + one, the same simple heuristic most vector editors use for a "make + smooth" action. Demoting to Corner leaves any existing handles + untouched (a Corner node can still have handles -- see + dragPathControlHandle() -- it just stops forcing them to stay + linked). Also switches into NodeEdit mode, so the result is + immediately visible rather than a change to data you'd otherwise + have to click into node-edit mode again to see. +*/ +void QetShapeItem::setNodeKind(int nodeIndex, NodeKind kind) +{ + if (nodeIndex < 0 || nodeIndex >= m_nodes.size()) + return; + + const QDomElement before = snapshotXml(); + + prepareGeometryChange(); + PathNode &node = m_nodes[nodeIndex]; + node.kind = kind; + + if (kind != NodeKind::Corner) + { + const int count = m_nodes.size(); + const bool hasPrev = (nodeIndex > 0) || (m_closed && count > 1); + const bool hasNext = (nodeIndex < count - 1) || (m_closed && count > 1); + const QPointF prevAnchor = hasPrev ? m_nodes.at((nodeIndex - 1 + count) % count).anchor : node.anchor; + const QPointF nextAnchor = hasNext ? m_nodes.at((nodeIndex + 1) % count).anchor : node.anchor; + + QPointF tangent = nextAnchor - prevAnchor; + const qreal tangentLength = qSqrt(tangent.x() * tangent.x() + tangent.y() * tangent.y()); + if (tangentLength > 1e-6) + tangent /= tangentLength; + + if (!node.outHandle && hasNext) + { + const QPointF toNext = nextAnchor - node.anchor; + const qreal len = qSqrt(toNext.x() * toNext.x() + toNext.y() * toNext.y()) / 3.0; + node.outHandle = tangent * len; + } + if (!node.inHandle && hasPrev) + { + const QPointF toPrev = prevAnchor - node.anchor; + const qreal len = qSqrt(toPrev.x() * toPrev.x() + toPrev.y() * toPrev.y()) / 3.0; + node.inHandle = -tangent * len; + } + + if (kind == NodeKind::Symmetric && node.inHandle && node.outHandle) + { + // Equalize lengths so the two handles are true mirrors from + // the start, not just collinear -- otherwise a node promoted + // straight to Symmetric would look identical to Smooth until + // the next drag "fixed" it. + const qreal inLen = qSqrt(node.inHandle->x() * node.inHandle->x() + node.inHandle->y() * node.inHandle->y()); + const qreal outLen = qSqrt(node.outHandle->x() * node.outHandle->x() + node.outHandle->y() * node.outHandle->y()); + const qreal avg = (inLen + outLen) / 2.0; + if (inLen > 1e-6) node.inHandle = *node.inHandle * (avg / inLen); + if (outLen > 1e-6) node.outHandle = *node.outHandle * (avg / outLen); + } + } + + const QDomElement after = snapshotXml(); + if (diagram()) + { + auto *undo = new PromoteShapeCommand(this, before, after); + undo->setText(tr("Modifier le type d'un nœud")); + diagram()->undoStack().push(undo); + } + + m_handleMode = HandleMode::NodeEdit; + rebuildHandles(); +} + +/** + @brief QetShapeItem::lockAspectRatio + Shift-constrained resize: keep the pre-drag width:height ratio, + driven by whichever dimension moved proportionally more, re-anchored + the same way the unconstrained result already was. +*/ +QRectF QetShapeItem::lockAspectRatio(const QRectF &oldRect, QRectF newRect, int resizeIndex, bool mirrored) +{ + Q_UNUSED(resizeIndex) + if (qFuzzyIsNull(oldRect.width()) || qFuzzyIsNull(oldRect.height())) + return newRect; + + const qreal ratio = oldRect.width() / oldRect.height(); + qreal w = newRect.width(), h = newRect.height(); + const qreal wChange = qAbs(w / oldRect.width() - 1.0); + const qreal hChange = qAbs(h / oldRect.height() - 1.0); + if (wChange > hChange) h = w / ratio; else w = h * ratio; + + const QPointF anchor = mirrored ? oldRect.center() : newRect.topLeft(); + if (mirrored) + return QRectF(anchor.x() - w / 2.0, anchor.y() - h / 2.0, w, h); + + // Re-anchor on whichever corner of newRect did not move -- simplest + // robust way to express "keep the fixed corner fixed" without having + // to re-derive which corner that is from resizeIndex. + const bool keepLeft = qFuzzyCompare(newRect.left(), oldRect.left()) || newRect.left() >= oldRect.right(); + const bool keepTop = qFuzzyCompare(newRect.top(), oldRect.top()) || newRect.top() >= oldRect.bottom(); + const qreal x = keepLeft ? newRect.left() : newRect.right() - w; + const qreal y = keepTop ? newRect.top() : newRect.bottom() - h; + return QRectF(x, y, w, h); +} + +bool QetShapeItem::isResizeCornerSlot(int slot) +{ + // The 4 corner indices among pointsForRect's 8-point (corner+edge) + // ordering -- shared by dragResize() (decides whether Alt detaches + // this vertex) and handleRoleTooltip() (decides whether to mention + // that in the tooltip), so the two can't drift apart. + return slot == 0 || slot == 2 || slot == 5 || slot == 7; +} + +void QetShapeItem::dragResize(int index, const QPointF &localPos, Qt::KeyboardModifiers mods) +{ + if (m_shapeType == Line) + { + prepareGeometryChange(); + (index == 0 ? m_P1 : m_P2) = localPos; + repositionHandles(); + emit geometryChanged(); + return; + } + + // Alt on a corner detaches that single vertex instead of resizing -- + // only corners (0,2,5,7 in pointsForRect's own ordering) carry that + // meaning; dragging an edge midpoint with Alt has no special effect. + if ((mods & Qt::AltModifier) && isResizeCornerSlot(index)) + { + promoteRectangleOrEllipseToPolygon(index, localPos); + return; + } + + const bool mirrored = mods & Qt::ControlModifier; + QRectF newRect = mirrored + ? QetGraphicsHandlerUtility::mirrorRectForPosAtIndex(localRect(), localPos, index) + : QetGraphicsHandlerUtility::rectForPosAtIndex(localRect(), localPos, index); + + if (mods & Qt::ShiftModifier) + newRect = lockAspectRatio(localRect(), newRect, index, mirrored); + + setRect(newRect.normalized()); +} + +void QetShapeItem::dragRotateHandle(int cornerIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods) +{ + // Both angles below are computed *without* ever un-rotating by the + // shape's current rotation: scenePivot is exactly pos()+pivot + // regardless of rotation/skew/scale (a linear map always fixes its + // own origin -- see shapetransform.h), and scaleAndShearOffset() is + // the corner's position with everything *except* rotation already + // applied. Solving "angleMouse == angleReference + rotation" this way + // is a plain assignment, not a recurrence -- unlike computing the + // angle via mapFromScene(), which divides out the *current* rotation + // and makes each frame's result depend on the previous frame's + // result: with the mouse held perfectly still that recurrence + // alternates between two values forever instead of settling, which is + // exactly the "jumps back and forth, lags behind" symptom. + const QPointF scenePivot = pos() + m_transform.pivot; + const qreal angleMouse = qRadiansToDegrees(qAtan2(scenePos.y() - scenePivot.y(), scenePos.x() - scenePivot.x())); + + const QPointF reference = scaleAndShearOffset(rotateHandleReference(cornerIndex)); + const qreal angleReference = qRadiansToDegrees(qAtan2(reference.y(), reference.x())); + + qreal angle = angleMouse - angleReference; + if (mods & Qt::ShiftModifier) + angle = qRound(angle / 15.0) * 15.0; + setRotation(angle); +} + +void QetShapeItem::dragSkewHandle(int edgeIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods) +{ + // Solved in closed form for the one skew component being dragged, + // holding rotation, scale and the *other* skew axis at their current + // values -- the same reasoning as dragRotateHandle() above applies + // here: computing this via mapFromScene() would divide out the skew + // value this very function is trying to determine. + // + // Q = the edge midpoint's offset from pivot, after scale only (fixed + // during this drag). + // M = the target offset (mouse position, relative to pos()+pivot), + // with rotation undone (fixed rotation during this drag). + // Shear(kx,ky) maps Q to (Qx + kx*Qy, Qy + ky*Qx) -- see + // shapetransform.cpp's decomposeLinear() derivation for this same + // convention -- so each unknown drops out with a single division. + const QPointF pivot = m_transform.pivot; + const QPointF Q = scaleOnlyOffset(edgeMidpoint(localRect(), edgeIndex)); + + const qreal rad = qDegreesToRadians(m_transform.rotation); + const qreal c = qCos(rad), s = qSin(rad); + const QPointF targetRel = scenePos - pos() - pivot; + const QPointF M(targetRel.x() * c + targetRel.y() * s, + -targetRel.x() * s + targetRel.y() * c); + + qreal degrees; + if (edgeIndex == 0 || edgeIndex == 2) // N/S edge -> skewX ("sh"): M.x = Q.x + kx*Q.y + { + if (qFuzzyIsNull(Q.y())) return; + degrees = qRadiansToDegrees(qAtan((M.x() - Q.x()) / Q.y())); + if (mods & Qt::ShiftModifier) degrees = qRound(degrees / 15.0) * 15.0; + setSkewX(degrees); + } + else // E/W edge -> skewY ("sv"): M.y = Q.y + ky*Q.x + { + if (qFuzzyIsNull(Q.x())) return; + degrees = qRadiansToDegrees(qAtan((M.y() - Q.y()) / Q.x())); + if (mods & Qt::ShiftModifier) degrees = qRound(degrees / 15.0) * 15.0; + setSkewY(degrees); + } +} + +void QetShapeItem::dragPivotHandle(const QPointF &localPos) +{ + // Snapping the pivot to the shape's own corners/center/edge-midpoints + // (Shift) is a straightforward nearest-of-9-candidates check; left as + // plain movement for now so the handle math above stays the focus. + m_pivotIsCustom = true; + setPivot(localPos); +} + +void QetShapeItem::dragArcEndpoint(int which, const QPointF &localPos, Qt::KeyboardModifiers mods) +{ + const QRectF r = localRect(); + const QPointF center = r.center(); + const qreal rawAngle = -qRadiansToDegrees(qAtan2(localPos.y() - center.y(), localPos.x() - center.x())); + + // atan2's principal value jumps by 360 degrees at the +-180 degree + // crossing even though the mouse only moved a hair -- unwrap it + // relative to this endpoint's own previous value (the smallest + // equivalent delta) so the stored angle, and therefore the rendered + // arc, changes continuously through that crossing instead of + // flipping to its complementary half. + const qreal previous = (which == 0) ? m_startAngle : m_endAngle; + qreal delta = std::fmod(rawAngle - previous + 540.0, 360.0) - 180.0; + qreal angle = previous + delta; + + if (mods & Qt::ShiftModifier) + angle = qRound(angle / 15.0) * 15.0; + which == 0 ? setStartAngle(angle) : setEndAngle(angle); +} + +void QetShapeItem::dragCornerRadius(int which, const QPointF &localPos) +{ + const qreal radius = QetGraphicsHandlerUtility::radiusForPosAtIndex(localRect(), localPos, which); + if (m_modifie_radius_equaly) { setXRadius(radius); setYRadius(radius); } + else if (which == 0) setXRadius(radius); + else setYRadius(radius); +} + +/** + @brief QetShapeItem::dragPathAnchor + Normally just moves the anchor (Polygon vertex, or a Path node's + anchor -- its in/out handles are relative offsets, so they follow + for free). Alt+drag on a Path anchor, in NodeEdit mode, does + something different instead: pulls a fresh pair of symmetric handles + directly out of that node, letting a bare Corner node be reshaped + into a curve without needing the context menu's "make smooth" + action first -- the anchor itself stays fixed; the drag distance and + direction become the outgoing handle, mirrored exactly for the + incoming one, matching Illustrator's own "Alt+drag an anchor" + convention for this exact gesture. Deliberately scoped to NodeEdit + mode: the curve *would* still bend if allowed in Size mode too (the + underlying node data doesn't care what mode is active), but the new + handles themselves would be invisible until switching modes anyway, + which would just be confusing. +*/ +void QetShapeItem::dragPathAnchor(int which, const QPointF &localPos, Qt::KeyboardModifiers mods) +{ + prepareGeometryChange(); + if (m_shapeType == Polygon) + { + m_polygon.replace(which, localPos); + } + else if (which < m_nodes.size()) + { + PathNode &node = m_nodes[which]; + if ((mods & Qt::AltModifier) && m_handleMode == HandleMode::NodeEdit) + { + const QPointF offset = localPos - node.anchor; + node.outHandle = offset; + node.inHandle = -offset; + node.kind = NodeKind::Symmetric; + } + else + { + node.anchor = localPos; // in/out handles are relative offsets: they follow for free + } + } + repositionHandles(); + emit geometryChanged(); +} + +/** + @brief QetShapeItem::dragPathControlHandle + Dragging a Bezier control handle. Corner nodes have no linked + opposite handle to update. Smooth nodes keep the two handles + collinear through the anchor but let each keep its own length + (tangent-continuous, magnitude-independent). Symmetric nodes mirror + both direction and length exactly. Alt always means "break a normally + -linked relationship" in this design -- here, detaching this handle + from its mirror, permanently downgrading the node to Corner, exactly + the same convention Alt already has on a rectangle's resize corner + (see dragResize()). +*/ +void QetShapeItem::dragPathControlHandle(bool isOutHandle, int nodeIndex, const QPointF &localPos, Qt::KeyboardModifiers mods) +{ + if (nodeIndex >= m_nodes.size()) + return; + + prepareGeometryChange(); + PathNode &node = m_nodes[nodeIndex]; + const QPointF newOffset = localPos - node.anchor; + auto &dragged = isOutHandle ? node.outHandle : node.inHandle; + dragged = newOffset; + + if (mods & Qt::AltModifier) + node.kind = NodeKind::Corner; + else + mirrorOppositeHandle(node, isOutHandle); + + repositionHandles(); +} + +/** + @brief QetShapeItem::mirrorOppositeHandle + Given a node whose one handle (out, if justChangedIsOut; in, + otherwise) was just set directly, updates its *other* handle to + respect the node's kind -- Smooth keeps both collinear through the + anchor but lets each keep its own prior length (tangent-continuous, + magnitude-independent); Symmetric also equalizes the lengths; Corner + does nothing, since it has no linked handle to update. If the other + handle doesn't exist yet at all, it's created here rather than left + missing -- matching its own length to whichever handle was just + dragged, the only sensible default when there's no prior length of + its own to preserve. Shared by dragPathControlHandle() (a handle + dragged directly), dragCurveSegment() (both handles moved together, + indirectly, by dragging the curve between two nodes), and + dragPathAnchor()'s Alt-drag (pulling a fresh pair of handles out of + a bare Corner node). +*/ +void QetShapeItem::mirrorOppositeHandle(PathNode &node, bool justChangedIsOut) +{ + if (node.kind == NodeKind::Corner) + return; + + auto &changed = justChangedIsOut ? node.outHandle : node.inHandle; + auto &mirrored = justChangedIsOut ? node.inHandle : node.outHandle; + if (!changed) + return; + + const qreal len = qSqrt(changed->x() * changed->x() + changed->y() * changed->y()); + if (len < 1e-6) + return; + + const QPointF direction(-changed->x() / len, -changed->y() / len); + const qreal keptLength = (node.kind == NodeKind::Symmetric || !mirrored) + ? len + : qSqrt(mirrored->x() * mirrored->x() + mirrored->y() * mirrored->y()); + mirrored = direction * keptLength; +} + +/** + @brief QetShapeItem::dragCurveSegment + Inkscape-style "grab the curve itself, not a handle" reshaping: moves + both of the segment's control points by the same amount, scaled so + the curve ends up passing through localPos at the parameter t where + the drag started. Verified algebraically and numerically before + shipping: for control points P1,P2 shifted by a constant delta, the + curve's own point at t shifts by exactly 3*(1-t)*t*delta, which is + exactly the factor divided back out below -- so the new curve passes + through localPos exactly, not approximately. + Always measured against the *original* control points captured when + the drag started (m_curveDragOriginalP1/P2), not the current + (possibly already-adjusted, this same drag) ones -- otherwise each + frame's adjustment would compound on top of the last, sending the + curve shooting off far past the cursor instead of tracking it. + Near either endpoint (t within 5% of 0 or 1) the curve is barely + sensitive to its control points at all -- the same reason grabbing a + suspension bridge's deck right next to a pylon barely moves it -- so + those clicks are left alone rather than requiring huge, unpredictable + handle movements for a small visual change; they're also close enough + to an anchor that the user most likely meant to grab that instead. +*/ +void QetShapeItem::dragCurveSegment(int segmentIndex, qreal t, const QPointF &localPos) +{ + if (t < 0.05 || t > 0.95) + return; + + const int count = m_nodes.size(); + const int nextIndex = (segmentIndex + 1) % count; + PathNode &a = m_nodes[segmentIndex]; + PathNode &b = m_nodes[nextIndex]; + + const QPointF p0 = a.anchor; + const QPointF p3 = b.anchor; + const qreal u = 1 - t; + + const QPointF originalCurvePoint = + u*u*u*p0 + 3*u*u*t*m_curveDragOriginalP1 + 3*u*t*t*m_curveDragOriginalP2 + t*t*t*p3; + const QPointF desired = localPos - originalCurvePoint; + const qreal factor = 3 * u * t; // > 0 given the t range guarded above + const QPointF handleDelta = desired / factor; + + prepareGeometryChange(); + a.outHandle = (m_curveDragOriginalP1 - p0) + handleDelta; + b.inHandle = (m_curveDragOriginalP2 - p3) + handleDelta; + + mirrorOppositeHandle(a, true); + mirrorOppositeHandle(b, false); + + repositionHandles(); +} + +/** + @brief QetShapeItem::handlerMousePressEvent + @param handlerIndex +*/ +void QetShapeItem::handlerMousePressEvent(int handlerIndex) +{ + Q_UNUSED(handlerIndex) m_old_P1 = m_P1; m_old_P2 = m_P2; m_old_polygon = m_polygon; m_old_xRadius = m_xRadius; m_old_yRadius = m_yRadius; + m_old_transform = m_transform; + m_old_pos = pos(); + m_old_nodes = m_nodes; if(m_xRadius == 0 && m_yRadius == 0) { m_modifie_radius_equaly = true; } @@ -723,117 +2487,152 @@ void QetShapeItem::handlerMousePressEvent() /** @brief QetShapeItem::handlerMouseMoveEvent + @param handlerIndex @param event */ -void QetShapeItem::handlerMouseMoveEvent(QGraphicsSceneMouseEvent *event) +void QetShapeItem::handlerMouseMoveEvent(int handlerIndex, QGraphicsSceneMouseEvent *event) { - QPointF new_pos = event->scenePos(); - if (event->modifiers() != Qt::ControlModifier) - new_pos = Diagram::snapToGrid(event->scenePos()); - new_pos = mapFromScene(new_pos); + QPointF scenePos = event->scenePos(); + // Bitwise flag check, not exact equality -- see + // DiagramEventAddShape::mousePressEvent's identical fix and comment: + // modifiers() == Ctrl alone fails the moment any other key (Alt, for + // dragPathAnchor()'s handle-creation gesture) is also held, + // silently falling through to snapToGrid() even though Ctrl is held. + if (!(event->modifiers() & Qt::ControlModifier)) + scenePos = Diagram::snapToGrid(scenePos); - switch (m_shapeType) + const HandleRole role = m_handleRoles.value(handlerIndex, HandleRole::Resize); + const int slot = m_handleSlot.value(handlerIndex, 0); + const Qt::KeyboardModifiers mods = event->modifiers(); + + // Rotate and SkewEdge are deliberately handled in scene space -- see + // their comments for why mapFromScene() (used for every other role + // below) is exactly the wrong tool for them. + if (role == HandleRole::Rotate) { dragRotateHandle(slot, scenePos, mods); return; } + if (role == HandleRole::SkewEdge) { dragSkewHandle(slot, scenePos, mods); return; } + + const QPointF new_pos = mapFromScene(scenePos); + + switch (role) { - case Line: - prepareGeometryChange(); - m_vector_index == 0 ? m_P1 = new_pos : m_P2 = new_pos; - adjustHandlerPos(); - break; - - case Rectangle: - if (m_resize_mode == 1) { - setRect(QetGraphicsHandlerUtility::rectForPosAtIndex(QRectF(m_P1, m_P2), new_pos, m_vector_index)); - break; - } - else if (m_resize_mode == 2) { - setRect(QetGraphicsHandlerUtility::mirrorRectForPosAtIndex(QRectF(m_P1, m_P2), new_pos, m_vector_index)); - break; - } - else { - qreal radius = QetGraphicsHandlerUtility::radiusForPosAtIndex(QRectF(m_P1, m_P2), new_pos, m_vector_index); - if(m_modifie_radius_equaly) { - setXRadius(radius); - setYRadius(radius); - } - else if(m_vector_index == 0) { - setXRadius(radius); - } - else { - setYRadius(radius); - } - adjustHandlerPos(); - break; - } - case Ellipse: - if (m_resize_mode == 1) { - setRect(QetGraphicsHandlerUtility::rectForPosAtIndex(QRectF(m_P1, m_P2), new_pos, m_vector_index)); - break; - } - else { - setRect(QetGraphicsHandlerUtility::mirrorRectForPosAtIndex(QRectF(m_P1, m_P2), new_pos, m_vector_index)); - break; - } - - case Polygon: - prepareGeometryChange(); - m_polygon.replace(m_vector_index, new_pos); - adjustHandlerPos(); - break; - } //End switch + case HandleRole::Resize: dragResize(slot, new_pos, mods); break; + case HandleRole::Pivot: dragPivotHandle(new_pos); break; + case HandleRole::CornerRadius: dragCornerRadius(slot, new_pos); break; + case HandleRole::ArcEndpoint: dragArcEndpoint(slot, new_pos, mods); break; + case HandleRole::PathAnchor: dragPathAnchor(slot, new_pos, mods); break; + case HandleRole::PathControlIn: dragPathControlHandle(false, slot, new_pos, mods); break; + case HandleRole::PathControlOut: dragPathControlHandle(true, slot, new_pos, mods); break; + case HandleRole::Rotate: + case HandleRole::SkewEdge: + break; // handled above + } } /** @brief QetShapeItem::handlerMouseReleaseEvent - @param qghi - @param event + @param handlerIndex */ -void QetShapeItem::handlerMouseReleaseEvent() +void QetShapeItem::handlerMouseReleaseEvent(int handlerIndex) { m_modifie_radius_equaly = false; + const HandleRole role = m_handleRoles.value(handlerIndex, HandleRole::Resize); + const int slot = m_handleSlot.value(handlerIndex, 0); - if (diagram()) + if (!diagram()) + return; + + QUndoCommand *undo = nullptr; + + switch (role) { - QPropertyUndoCommand *undo = nullptr; - if ((m_shapeType & (Line | Rectangle | Ellipse)) && ((m_P1 != m_old_P1 || m_P2 != m_old_P2) || - (m_old_xRadius != XRadius() || m_old_yRadius != m_yRadius)) - ) - { - switch(m_shapeType) + case HandleRole::Resize: + if (m_shapeType == Line) { - case Line: { - undo = new QPropertyUndoCommand(this, "line",QLineF(m_old_P1, m_old_P2), QLineF(m_P1, m_P2)); - break; - } - case Rectangle: { - if (m_resize_mode == 1 || m_resize_mode == 2) { - undo = new QPropertyUndoCommand(this, "rect",QRectF(m_old_P1, m_old_P2), QRectF(m_P1, m_P2).normalized()); - } - else if (m_resize_mode == 3) - { - undo = new QPropertyUndoCommand(this, "xRadius", m_old_xRadius, m_xRadius); - QPropertyUndoCommand *undo_ = new QPropertyUndoCommand(this, "yRadius", m_old_yRadius, m_yRadius, undo); - undo_->setAnimated(); - } - break; - } - case Ellipse: { - undo = new QPropertyUndoCommand(this, "rect",QRectF(m_old_P1, m_old_P2), QRectF(m_P1, m_P2).normalized()); - break; - } - case Polygon: break; + if (m_P1 != m_old_P1 || m_P2 != m_old_P2) + undo = new QPropertyUndoCommand(this, "line", QLineF(m_old_P1, m_old_P2), QLineF(m_P1, m_P2)); } - if (undo) { - undo->setAnimated(true, false); + else if (m_P1 != m_old_P1 || m_P2 != m_old_P2) + { + undo = new QPropertyUndoCommand(this, "rect", QRectF(m_old_P1, m_old_P2), QRectF(m_P1, m_P2).normalized()); } - } - else if (m_shapeType == Polygon && (m_polygon != m_old_polygon)) - undo = new QPropertyUndoCommand(this, "polygon", m_old_polygon, m_polygon); + break; - if(undo) - { + case HandleRole::Rotate: + if (!qFuzzyCompare(m_transform.rotation, m_old_transform.rotation)) + undo = new QPropertyUndoCommand(this, "rotation", m_old_transform.rotation, m_transform.rotation); + break; + + case HandleRole::SkewEdge: + if (!qFuzzyCompare(m_transform.skewX, m_old_transform.skewX)) + undo = new QPropertyUndoCommand(this, "skewX", m_old_transform.skewX, m_transform.skewX); + else if (!qFuzzyCompare(m_transform.skewY, m_old_transform.skewY)) + undo = new QPropertyUndoCommand(this, "skewY", m_old_transform.skewY, m_transform.skewY); + break; + + case HandleRole::Pivot: + if (m_transform.pivot != m_old_transform.pivot) + { + undo = new QUndoCommand(tr("Deplacer le centre de rotation")); + new QPropertyUndoCommand(this, "pos", m_old_pos, pos(), undo); + new QPropertyUndoCommand(this, "pivot", m_old_transform.pivot, m_transform.pivot, undo); + } + break; + + case HandleRole::CornerRadius: + if (m_old_xRadius != m_xRadius || m_old_yRadius != m_yRadius) + { + undo = new QPropertyUndoCommand(this, "xRadius", m_old_xRadius, m_xRadius); + new QPropertyUndoCommand(this, "yRadius", m_old_yRadius, m_yRadius, undo); + } + break; + + case HandleRole::ArcEndpoint: + // startAngle/endAngle changes are cosmetic-cost enough (and + // re-derived from each other on snap-to-full-ellipse) that + // they are intentionally not wrapped in undo here yet -- flag + // for a follow-up once ArcEndpoint dragging ships in the UI. + break; + + case HandleRole::PathAnchor: + if (m_shapeType == Polygon && m_polygon != m_old_polygon) + { + undo = new QPropertyUndoCommand(this, "polygon", m_old_polygon, m_polygon); + } + else if (m_shapeType == Path && m_nodes != m_old_nodes) + { + // PathNode/QVector<PathNode> isn't a Q_PROPERTY-friendly + // type, so this reuses PromoteShapeCommand's generic + // before/after XML snapshot mechanism instead of a + // dedicated undo class -- swap in the old nodes just + // long enough to snapshot them, then restore. + const QVector<PathNode> after = m_nodes; + m_nodes = m_old_nodes; + const QDomElement before = snapshotXml(); + m_nodes = after; + const QDomElement afterXml = snapshotXml(); + undo = new PromoteShapeCommand(this, before, afterXml); + } + break; + + case HandleRole::PathControlIn: + case HandleRole::PathControlOut: + if (m_nodes != m_old_nodes) + { + const QVector<PathNode> after = m_nodes; + m_nodes = m_old_nodes; + const QDomElement before = snapshotXml(); + m_nodes = after; + const QDomElement afterXml = snapshotXml(); + undo = new PromoteShapeCommand(this, before, afterXml); + } + break; + } + + if (undo) + { + if (undo->text().isEmpty()) undo->setText(tr("Modifier %1").arg(name())); - diagram()->undoStack().push(undo); - } + diagram()->undoStack().push(undo); } } @@ -847,6 +2646,14 @@ bool QetShapeItem::fromXml(const QDomElement &e) { if (e.tagName() != "shape") return (false); + // fromXml() is also used to *restore* an already-displayed item's + // state (PromoteShapeCommand's undo/redo), not just to populate a + // freshly constructed one -- without this, Qt has no way to know the + // item's *previous* on-screen bounding rect needs repainting once the + // geometry underneath it changes, so the old rendering stays stuck + // until something unrelated forces a repaint of that area. + prepareGeometryChange(); + is_movable_ = (e.attribute("is_movable").toInt()); m_closed = e.attribute("closed", "0").toInt(); m_pen = QETXML::penFromXml(e.firstChildElement("pen")); @@ -856,7 +2663,7 @@ bool QetShapeItem::fromXml(const QDomElement &e) QMetaEnum me = metaObject()->enumerator(metaObject()->indexOfEnumerator("ShapeType")); m_shapeType = QetShapeItem::ShapeType(me.keysToValue(type.toStdString().data())); - if (m_shapeType != Polygon) + if (m_shapeType != Polygon && m_shapeType != Path) { m_P1.setX(e.attribute("x1", nullptr).toDouble()); m_P1.setY(e.attribute("y1", nullptr).toDouble()); @@ -869,13 +2676,89 @@ bool QetShapeItem::fromXml(const QDomElement &e) setYRadius(e.attribute("ry", "0").toDouble()); } } - else { + if (m_shapeType == Polygon) + { + // fromXml() must be safe to call on an already-populated item, not + // just a freshly constructed one: PromoteShapeCommand's undo/redo + // (and the automatic redo() that QUndoStack::push() performs the + // instant a command is pushed) both call it to *restore* a prior + // state, on an object that already has geometry in it. Appending + // onto whatever is already there -- rather than replacing it -- + // silently duplicated every point on the very first undo-worthy + // edit. + m_polygon.clear(); for(const QDomElement& de : QET::findInDomElement(e, "points", "point")) { m_polygon << QPointF(de.attribute("x", nullptr).toDouble(), de.attribute("y", nullptr).toDouble()); } } + else if (m_shapeType == Path) + { + m_nodes.clear(); + for (const QDomElement &nodeElement : QET::findInDomElement(e, "nodes", "node")) + { + PathNode node; + node.anchor = QPointF(nodeElement.attribute("x").toDouble(), nodeElement.attribute("y").toDouble()); + const QString kind = nodeElement.attribute("kind", "corner"); + node.kind = (kind == "smooth") ? NodeKind::Smooth + : (kind == "symmetric") ? NodeKind::Symmetric + : NodeKind::Corner; + QDomElement in = nodeElement.firstChildElement("in"); + if (!in.isNull()) + node.inHandle = QPointF(in.attribute("dx").toDouble(), in.attribute("dy").toDouble()); + QDomElement out = nodeElement.firstChildElement("out"); + if (!out.isNull()) + node.outHandle = QPointF(out.attribute("dx").toDouble(), out.attribute("dy").toDouble()); + m_nodes << node; + } + } + + QDomElement transformElement = e.firstChildElement("transform"); + if (!transformElement.isNull()) + { + m_transform.rotation = transformElement.attribute("rotation", "0").toDouble(); + m_transform.skewX = transformElement.attribute("skewX", "0").toDouble(); + m_transform.skewY = transformElement.attribute("skewY", "0").toDouble(); + m_transform.scaleX = transformElement.attribute("scaleX", "1").toDouble(); + m_transform.scaleY = transformElement.attribute("scaleY", "1").toDouble(); + m_transform.pivot = QPointF(transformElement.attribute("pivotX", "0").toDouble(), + transformElement.attribute("pivotY", "0").toDouble()); + m_pivotIsCustom = true; + } + else + { + m_transform = ShapeTransform(); + m_transform.pivot = localRect().center(); + m_pivotIsCustom = false; + } + setTransform(m_transform.toMatrix()); + + QDomElement arcElement = e.firstChildElement("arc"); + if (!arcElement.isNull() && m_shapeType == Ellipse) + { + m_startAngle = arcElement.attribute("startAngle", "0").toDouble(); + m_endAngle = m_startAngle + arcElement.attribute("spanAngle", "360").toDouble(); + const QString closure = arcElement.attribute("closure", "none"); + m_arcClosure = (closure == "chord") ? Chord : (closure == "pie") ? Pie : NoClosure; + } + + if (e.hasAttribute("posX") || e.hasAttribute("posY")) + { + QGraphicsItem::setPos(e.attribute("posX", "0").toDouble(), + e.attribute("posY", "0").toDouble()); + } + setZValue(e.attribute("z", QString::number(this->zValue())).toDouble()); + // fromXml() can change anything about the shape -- geometry, node + // count, even shapeType() itself (undoing a Rectangle->Polygon + // promotion) -- so a full rebuild, not just a reposition, is the only + // choice that's guaranteed consistent with whatever state was just + // restored. Only when selected: an unselected item should have no + // handles at all, and this can run on any item in the diagram, not + // just the one currently being interacted with. + if (isSelected()) + rebuildHandles(); + return (true); } @@ -897,12 +2780,12 @@ QDomElement QetShapeItem::toXml(QDomDocument &document) const result.setAttribute("is_movable", bool(is_movable_)); result.setAttribute("closed", bool(m_closed)); - if (m_shapeType != Polygon) + if (m_shapeType != Polygon && m_shapeType != Path) { - result.setAttribute("x1", QString::number(mapToScene(m_P1).x())); - result.setAttribute("y1", QString::number(mapToScene(m_P1).y())); - result.setAttribute("x2", QString::number(mapToScene(m_P2).x())); - result.setAttribute("y2", QString::number(mapToScene(m_P2).y())); + result.setAttribute("x1", QString::number(m_P1.x())); + result.setAttribute("y1", QString::number(m_P1.y())); + result.setAttribute("x2", QString::number(m_P2.x())); + result.setAttribute("y2", QString::number(m_P2.y())); if (m_shapeType == Rectangle) { @@ -910,19 +2793,86 @@ QDomElement QetShapeItem::toXml(QDomDocument &document) const result.setAttribute("ry", QString::number(m_yRadius)); } } - else + if (m_shapeType == Polygon) { QDomElement points = document.createElement("points"); for (QPointF p : m_polygon) { QDomElement point = document.createElement("point"); - QPointF pf = mapToScene(p); - point.setAttribute("x", QString::number(pf.x())); - point.setAttribute("y", QString::number(pf.y())); + point.setAttribute("x", QString::number(p.x())); + point.setAttribute("y", QString::number(p.y())); points.appendChild(point); } result.appendChild(points); } + else if (m_shapeType == Path) + { + QDomElement nodes = document.createElement("nodes"); + for (const PathNode &n : m_nodes) + { + QDomElement node = document.createElement("node"); + node.setAttribute("x", QString::number(n.anchor.x())); + node.setAttribute("y", QString::number(n.anchor.y())); + if (n.kind != NodeKind::Corner) + node.setAttribute("kind", n.kind == NodeKind::Smooth ? "smooth" : "symmetric"); + if (n.inHandle) + { + QDomElement in = document.createElement("in"); + in.setAttribute("dx", QString::number(n.inHandle->x())); + in.setAttribute("dy", QString::number(n.inHandle->y())); + node.appendChild(in); + } + if (n.outHandle) + { + QDomElement out = document.createElement("out"); + out.setAttribute("dx", QString::number(n.outHandle->x())); + out.setAttribute("dy", QString::number(n.outHandle->y())); + node.appendChild(out); + } + nodes.appendChild(node); + } + result.appendChild(nodes); + } + + // Omitted entirely at identity, exactly like an absent radius today -- + // this is what keeps old files, and files that never touch rotation, + // byte-for-byte unchanged. + if (!m_transform.isIdentity() || m_pivotIsCustom) + { + QDomElement transformElement = document.createElement("transform"); + transformElement.setAttribute("rotation", QString::number(m_transform.rotation)); + transformElement.setAttribute("skewX", QString::number(m_transform.skewX)); + transformElement.setAttribute("skewY", QString::number(m_transform.skewY)); + transformElement.setAttribute("scaleX", QString::number(m_transform.scaleX)); + transformElement.setAttribute("scaleY", QString::number(m_transform.scaleY)); + transformElement.setAttribute("pivotX", QString::number(m_transform.pivot.x())); + transformElement.setAttribute("pivotY", QString::number(m_transform.pivot.y())); + result.appendChild(transformElement); + } + + if (m_shapeType == Ellipse && (!isFullEllipse() || m_arcClosure != NoClosure)) + { + QDomElement arcElement = document.createElement("arc"); + arcElement.setAttribute("startAngle", QString::number(m_startAngle)); + arcElement.setAttribute("spanAngle", QString::number(spanAngle())); + if (m_arcClosure != NoClosure) + arcElement.setAttribute("closure", m_arcClosure == Chord ? "chord" : "pie"); + result.appendChild(arcElement); + } + + // pos() is meaningful now that pivot moves (and, transparently, every + // ordinary resize via the auto-recentring pivot -- see setRect()) + // compensate through it rather than through m_P1/m_P2. It was never + // written here before; omitted at every reload it silently reset to + // (0,0), which is exactly the "position shifts slightly on reload" + // bug -- geometry and transform round-tripped correctly, but the + // placement component of the two together did not. + if (!pos().isNull()) + { + result.setAttribute("posX", QString::number(pos().x())); + result.setAttribute("posY", QString::number(pos().y())); + } + result.setAttribute("z", QString::number(this->zValue())); return(result); @@ -937,6 +2887,21 @@ QDomElement QetShapeItem::toXml(QDomDocument &document) const */ bool QetShapeItem::toDXF(const QString &filepath,const QPen &pen) { + // A non-identity transform means the shape is no longer axis-aligned + // in scene space: mapping just two opposite corners and building a + // new axis-aligned QRectF from them (the old Rectangle/Ellipse path + // below) would silently produce the wrong quadrilateral. Fall back to + // exporting the mapped outline as a polygon/polyline instead, exactly + // the path already used for Polygon today. + if (!m_transform.isIdentity() && (m_shapeType == Rectangle || m_shapeType == Ellipse)) + { + const QPolygonF mappedOutline = mapToScene(outline().toFillPolygon()); + if (m_shapeType == Rectangle || isFullEllipse()) + Createdxf::drawPolygon(filepath, mappedOutline, Createdxf::dxfColor(pen)); + else + Createdxf::drawPolyline(filepath, mappedOutline, Createdxf::dxfColor(pen)); + return true; + } switch (m_shapeType) { @@ -959,11 +2924,34 @@ bool QetShapeItem::toDXF(const QString &filepath,const QPen &pen) Createdxf::dxfColor(pen)); return true; case Polygon: - if(m_polygon.isClosed()) + // m_closed, not m_polygon.isClosed(): m_polygon's own points + // never include a duplicate closing point in this design -- + // outline() relies on m_closed + QPainterPath::closeSubpath() + // for the visual effect, so isClosed()'s geometric check + // (do the first and last points happen to coincide?) almost + // always reads false regardless of the user's actual intent. + if (m_closed) Createdxf::drawPolygon(filepath,m_polygon,Createdxf::dxfColor(pen)); else Createdxf::drawPolyline(filepath,m_polygon,Createdxf::dxfColor(pen)); return true; + case Path: + { + // toSubpathPolygons(), not outline().toFillPolygon(): the + // latter exists for fill-rendering, which inherently needs a + // closed shape, so it silently appends a closing point onto + // *any* path regardless of m_closed -- confirmed directly + // against the real QPainterPath before relying on it here. + // toSubpathPolygons() has no such fill-oriented bias and + // correctly preserves the open/closed distinction. + const QList<QPolygonF> subpaths = outline().toSubpathPolygons(); + const QPolygonF flattened = subpaths.isEmpty() ? QPolygonF() : mapToScene(subpaths.first()); + if (m_closed) + Createdxf::drawPolygon(filepath, flattened, Createdxf::dxfColor(pen)); + else + Createdxf::drawPolyline(filepath, flattened, Createdxf::dxfColor(pen)); + return true; + } default: return false; } @@ -990,8 +2978,9 @@ QString QetShapeItem::name() const switch (m_shapeType) { case Line: return tr("une ligne"); case Rectangle: return tr("un rectangle"); - case Ellipse: return tr("une éllipse"); + case Ellipse: return isFullEllipse() ? tr("une éllipse") : tr("un arc"); case Polygon: return tr("une polyligne"); + case Path: return tr("une courbe"); default: return tr("une shape"); } } diff --git a/sources/qetgraphicsitem/qetshapeitem.h b/sources/qetgraphicsitem/qetshapeitem.h index d13f71475..fdb7fe6a4 100644 --- a/sources/qetgraphicsitem/qetshapeitem.h +++ b/sources/qetgraphicsitem/qetshapeitem.h @@ -20,8 +20,11 @@ #include "../QetGraphicsItemModeler/qetgraphicshandleritem.h" #include "qetgraphicsitem.h" +#include "shapetransform.h" #include <QPen> +#include <optional> +#include <utility> class QDomElement; class QDomDocument; @@ -30,8 +33,10 @@ class QAction; /** @brief The QetShapeItem class - this class is used to draw a basic shape (line, rectangle, ellipse) - into a diagram, that can be saved to .qet file. + this class is used to draw a basic shape (line, rectangle, ellipse, + polygon or free-form path) into a diagram, that can be saved to a + .qet file. Beyond its local geometry, a shape may also carry a + rotation/skew/scale (see ShapeTransform) around an arbitrary pivot. */ class QetShapeItem : public QetGraphicsItem { @@ -46,21 +51,86 @@ class QetShapeItem : public QetGraphicsItem Q_PROPERTY(qreal xRadius READ XRadius WRITE setXRadius NOTIFY XRadiusChanged) Q_PROPERTY(qreal yRadius READ YRadius WRITE setYRadius NOTIFY YRadiusChanged) + // One property per ShapeTransform scalar -- this is what lets a plain + // QPropertyUndoCommand(this, "rotation", oldValue, newValue) work for + // every handle, exactly like xRadius/yRadius already do for corner + // rounding. + Q_PROPERTY(qreal rotation READ rotation WRITE setRotation NOTIFY transformChanged) + Q_PROPERTY(qreal skewX READ skewX WRITE setSkewX NOTIFY transformChanged) + Q_PROPERTY(qreal skewY READ skewY WRITE setSkewY NOTIFY transformChanged) + Q_PROPERTY(qreal scaleFactorX READ scaleFactorX WRITE setScaleFactorX NOTIFY transformChanged) + Q_PROPERTY(qreal scaleFactorY READ scaleFactorY WRITE setScaleFactorY NOTIFY transformChanged) + Q_PROPERTY(QPointF pivot READ pivot WRITE setPivot NOTIFY transformChanged) + + Q_PROPERTY(qreal startAngle READ startAngle WRITE setStartAngle NOTIFY arcChanged) + Q_PROPERTY(qreal endAngle READ endAngle WRITE setEndAngle NOTIFY arcChanged) + signals: void penChanged(); void brushChanged(); void closeChanged(); void XRadiusChanged(); void YRadiusChanged(); - - + void transformChanged(); + void arcChanged(); + void geometryChanged(); // P1/P2, polygon points, or path nodes changed -- lets the properties panel stay in sync while a handle is dragged, not just when it's typed into + public: enum ShapeType {Line =1, Rectangle =2, Ellipse =4, - Polygon =8 }; + Polygon =8, + Path =16 }; Q_ENUM (ShapeType) + enum ArcClosure {NoClosure = 0, Chord = 1, Pie = 2}; + Q_ENUM (ArcClosure) + + // Point of a Path shape. Anchors are in the same local coordinate + // frame as an ordinary Polygon's points; handle offsets are stored + // *relative to the anchor*, so moving a node never has to rewrite + // its own handle coordinates. + enum class NodeKind {Corner, Smooth, Symmetric}; + struct PathNode { + QPointF anchor; + NodeKind kind = NodeKind::Corner; + std::optional<QPointF> inHandle; + std::optional<QPointF> outHandle; + + bool operator==(const PathNode &other) const { + return anchor == other.anchor && kind == other.kind + && inHandle == other.inHandle && outHandle == other.outHandle; + } + }; + + // Orthogonal to ShapeType: which handle set is currently shown. + // Cycled by clicking an already-selected shape without dragging: + // Size -> Corner -> RotateSkew -> Size for Rectangle (the only + // type with a corner-radius concept); Size -> NodeEdit -> + // RotateSkew -> Size for Path (reveals control handles for + // every node that has any); Size -> RotateSkew -> Size for + // everything else. One unified click-cycle for every shape + // type, rather than a separate, less discoverable gesture + // (e.g. double-click) for any one shape's extra mode. + enum class HandleMode {Size, Corner, NodeEdit, RotateSkew}; + + // index conventions, deliberately matched to what already exists + // rather than invented fresh: + // Resize 0..7, same order as QetGraphicsHandlerUtility::pointsForRect + // (this is exactly today's Rectangle/Ellipse handle set -- + // only the Ctrl/Shift dispatch around it is new) + // Rotate 0..3, corners: NW, NE, SE, SW + // SkewEdge 0..3, edges: N, E, S, W + // CornerRadius 0..1, same order as QetGraphicsHandlerUtility::pointForRadiusRect + // ArcEndpoint 0 = start angle, 1 = end angle + enum class HandleRole { + Resize, // Size mode + Rotate, SkewEdge, Pivot, // RotateSkew mode + CornerRadius, // Rectangle, always shown alongside Size handles + ArcEndpoint, // Ellipse, always shown + PathAnchor, PathControlIn, PathControlOut // Polygon/Path, node-edit mode (see setPathNodes()) + }; + enum { Type = UserType + 1008 }; QetShapeItem( @@ -102,6 +172,41 @@ class QetShapeItem : public QetGraphicsItem qreal YRadius() const {return m_yRadius;} void setYRadius(qreal Y); + //Transform: one accessor pair per ShapeTransform scalar (see + //the Q_PROPERTY block above for why they are not grouped into + //a single property). + const ShapeTransform &shapeTransform() const {return m_transform;} + qreal rotation() const {return m_transform.rotation;} + void setRotation(qreal degrees); + qreal skewX() const {return m_transform.skewX;} + void setSkewX(qreal degrees); + qreal skewY() const {return m_transform.skewY;} + void setSkewY(qreal degrees); + qreal scaleFactorX() const {return m_transform.scaleX;} + void setScaleFactorX(qreal factor); + qreal scaleFactorY() const {return m_transform.scaleY;} + void setScaleFactorY(qreal factor); + QPointF pivot() const {return m_transform.pivot;} + void setPivot(const QPointF &pivot); // moves the pivot handle: compensates pos() so the shape does not jump + void resetPivotToBoundingRectCenter(); + void enableNodeEditMode(); // Path only: switches to NodeEdit mode, so every node's control handles become visible + + //Arc: only meaningful when shapeType() == Ellipse. A full + //ellipse is just an arc with span 360 -- there is no separate + //Arc shape type. + qreal startAngle() const {return m_startAngle;} + void setStartAngle(qreal degrees); + qreal endAngle() const {return m_endAngle;} + void setEndAngle(qreal degrees); + qreal spanAngle() const {return m_endAngle - m_startAngle;} + bool isFullEllipse() const {return qFuzzyCompare(qAbs(spanAngle()), qreal(360));} + ArcClosure arcClosure() const {return m_arcClosure;} + void setArcClosure(ArcClosure closure); + + //Path (Bezier): only meaningful when shapeType() == Path. + const QVector<PathNode> &pathNodes() const {return m_nodes;} + void setPathNodes(const QVector<PathNode> &nodes); + //Methods available for polygon shape int pointsCount () const; void setNextPoint (QPointF P); @@ -118,6 +223,8 @@ class QetShapeItem : public QetGraphicsItem void hoverEnterEvent (QGraphicsSceneHoverEvent *event) override; void hoverLeaveEvent (QGraphicsSceneHoverEvent *event) override; void mousePressEvent (QGraphicsSceneMouseEvent *event) override; + void mouseMoveEvent (QGraphicsSceneMouseEvent *event) override; + void mouseReleaseEvent (QGraphicsSceneMouseEvent *event) override; QVariant itemChange( GraphicsItemChange change, const QVariant &value) override; @@ -128,17 +235,63 @@ class QetShapeItem : public QetGraphicsItem QGraphicsSceneContextMenuEvent *event) override; private: - void switchResizeMode(); - void addHandler(); - void adjustHandlerPos(); + void toggleHandleMode(); + HandleMode nextHandleMode() const; // what a click would switch to from here -- shared by toggleHandleMode() and the tooltip + void updateModeHint(); // keeps the tooltip in sync with nextHandleMode() + void refreshInteractionHints(); // updateModeHint(), plus an immediate re-show of tooltip/status bar if currently hovered + void showStatusHint(const QString &text) const; + void clearStatusHint() const; + QString currentModeStatusHint() const; // richer, one-line gesture/modifier reference for the status bar, shown when hovering the shape body + QString handleRoleTooltip(HandleRole role, int slot) const; // shown natively by Qt when hovering that specific handle, and pushed to the status bar too + static QString handleModeLabel(HandleMode mode); + static bool isResizeCornerSlot(int slot); // true for the 4 corner slots (of 8) in QetGraphicsHandlerUtility::pointsForRect's ordering + void rebuildHandles(); // (re)creates handler items -- only when the *set* of handles changes + void repositionHandles(); // moves existing handler items -- safe to call every frame of a live drag void insertPoint(); void removePoint(); - - void handlerMousePressEvent(); - void handlerMouseMoveEvent(QGraphicsSceneMouseEvent *event); - void handlerMouseReleaseEvent(); + void convertToPathExplicitly(); // context-menu action; see promoteRectangleOrEllipseToPolygon() + void mirror(bool horizontal); // context-menu action: flips scaleFactorX (horizontal) or scaleFactorY (vertical) around the current pivot + void setNodeKind(int nodeIndex, NodeKind kind); // context-menu action on a Path node - ///ATTRIBUTES + void handlerMousePressEvent(int handlerIndex); + void handlerMouseMoveEvent(int handlerIndex, QGraphicsSceneMouseEvent *event); + void handlerMouseReleaseEvent(int handlerIndex); + + // One dispatch function per handle role -- called from + // handlerMouseMoveEvent() with the mouse position already + // mapped to local coordinates and any grid snap applied. + // dragResize() covers both the plain and Ctrl/Shift/Alt-modified + // interpretations of the whole Size handle set. + void dragResize (int index, const QPointF &localPos, Qt::KeyboardModifiers mods); + void dragRotateHandle(int cornerIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods); + void dragSkewHandle (int edgeIndex, const QPointF &scenePos, Qt::KeyboardModifiers mods); + void dragPivotHandle (const QPointF &localPos); + void dragArcEndpoint (int which, const QPointF &localPos, Qt::KeyboardModifiers mods); + void dragCornerRadius(int which, const QPointF &localPos); + void dragPathAnchor (int which, const QPointF &localPos, Qt::KeyboardModifiers mods); + void dragPathControlHandle(bool isOutHandle, int nodeIndex, const QPointF &localPos, Qt::KeyboardModifiers mods); + void mirrorOppositeHandle(PathNode &node, bool justChangedIsOut); // shared by dragPathControlHandle() and dragCurveSegment() + void dragCurveSegment(int segmentIndex, qreal t, const QPointF &localPos); // Inkscape-style "grab the curve itself" + + void promoteRectangleOrEllipseToPolygon(int detachedResizeIndex, const QPointF &newLocalPos); + std::pair<int, qreal> nearestPathSegment(const QPointF &localPos) const; // {segmentIndex, t}, -1 if fewer than 2 nodes + void insertPathPoint(int segmentIndex, qreal t); // De Casteljau split -- see .cpp for why + void removePathPoint(int nodeIndex); + QDomElement snapshotXml() const; // helper for PromoteShapeCommand: toXml() into a throwaway document + + QRectF localRect() const; + QPainterPath outline() const; // raw, unstroked path for the current type; shared by shape() and paint() + QVector<QPointF> currentHandlePositions() const; // in m_handleRoles/m_handleSlot order, local coordinates + QPointF handlePositionFor(HandleRole role, int slot) const; + QPointF rotateHandleReference(int slot) const; // the point a Rotate handle tracks, before rotation is applied + QPointF scaleOnlyOffset(const QPointF &localPoint) const; // (localPoint - pivot), scaled, in the pre-shear frame + QPointF scaleAndShearOffset(const QPointF &localPoint) const; // same, with current shear also applied -- the pre-rotation frame + static QColor colorForHandleRole(HandleRole role); + static QRectF lockAspectRatio(const QRectF &oldRect, QRectF newRect, int resizeIndex, bool mirrored); + static QPointF cornerPoint(const QRectF &rect, int cornerIndex); // 0=NW,1=NE,2=SE,3=SW + static QPointF edgeMidpoint(const QRectF &rect, int edgeIndex); // 0=N, 1=E, 2=S, 3=W + + ///ATTRIBUTES private: ShapeType m_shapeType; QPen m_pen; @@ -153,7 +306,6 @@ class QetShapeItem : public QetGraphicsItem int m_vector_index; bool m_closed = false, m_modifie_radius_equaly = false; - int m_resize_mode = 1; QVector<QetGraphicsHandlerItem *> m_handler_vector; QAction *m_insert_point, *m_remove_point; @@ -161,5 +313,26 @@ class QetShapeItem : public QetGraphicsItem m_yRadius = 0, m_old_xRadius, m_old_yRadius; + + ShapeTransform m_transform; + ShapeTransform m_old_transform; + HandleMode m_handleMode = HandleMode::Size; + QVector<HandleRole> m_handleRoles; // parallel to m_handler_vector, one role per handle + QVector<int> m_handleSlot; // parallel to m_handler_vector, meaning depends on role (see HandleRole) + QPointF m_old_pos; + + qreal m_startAngle = 0; + qreal m_endAngle = 360; + ArcClosure m_arcClosure = NoClosure; + bool m_pivotIsCustom = false; // false: pivot auto-follows the bounding-rect center on every geometry edit + bool m_deferHandleReposition = false; // true while setPivot() is applying its two related updates together + + QVector<PathNode> m_nodes; + QVector<PathNode> m_old_nodes; // saved at handle press, for undo + int m_curveDragSegment = -1; // >=0 while dragging the curve itself (not a handle) between two nodes + qreal m_curveDragT = 0; // parameter along that segment where the drag started + QPointF m_curveDragOriginalP1, m_curveDragOriginalP2; // absolute control points at drag start, fixed for the whole drag + QPointF m_curveDragPressPos; // local position at press, to tell a plain click from a real drag + bool m_curveDragEngaged = false; // false until the drag actually exceeds a small threshold }; #endif // QETSHAPEITEM_H diff --git a/sources/qetgraphicsitem/shapetransform.cpp b/sources/qetgraphicsitem/shapetransform.cpp new file mode 100644 index 000000000..b2eb98077 --- /dev/null +++ b/sources/qetgraphicsitem/shapetransform.cpp @@ -0,0 +1,88 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#include "shapetransform.h" + +#include <QtCore/qmath.h> + +bool ShapeTransform::isIdentity() const +{ + return qFuzzyIsNull(rotation) && qFuzzyIsNull(skewX) && qFuzzyIsNull(skewY) + && qFuzzyCompare(scaleX, qreal(1)) && qFuzzyCompare(scaleY, qreal(1)); +} + +QTransform ShapeTransform::linearPart() const +{ + QTransform t; + t.rotate(rotation); + t.shear(qTan(qDegreesToRadians(skewX)), qTan(qDegreesToRadians(skewY))); + t.scale(scaleX, scaleY); + return t; +} + +QTransform ShapeTransform::toMatrix() const +{ + QTransform t; + t.translate(pivot.x(), pivot.y()); + t.rotate(rotation); + t.shear(qTan(qDegreesToRadians(skewX)), qTan(qDegreesToRadians(skewY))); + t.scale(scaleX, scaleY); + t.translate(-pivot.x(), -pivot.y()); + return t; +} + +bool ShapeTransform::operator==(const ShapeTransform &other) const +{ + return qFuzzyCompare(rotation, other.rotation) + && qFuzzyCompare(skewX, other.skewX) + && qFuzzyCompare(skewY, other.skewY) + && qFuzzyCompare(scaleX, other.scaleX) + && qFuzzyCompare(scaleY, other.scaleY) + && pivot == other.pivot; +} + +ShapeTransform decomposeLinear(const QTransform &m) +{ + const qreal scaleX = qSqrt(m.m11() * m.m11() + m.m12() * m.m12()); + const qreal rotation = qRadiansToDegrees(qAtan2(m.m12(), m.m11())); + const qreal rad = qDegreesToRadians(rotation); + const qreal c = qCos(rad), s = qSin(rad); + + // v * R(-rotation): undo the rotation, leaving the pure shear+scale + // contribution the local y-axis picked up from Shear(sh,0)*Scale(sx,sy). + const qreal vx = m.m21() * c + m.m22() * s; + const qreal scaleY = -m.m21() * s + m.m22() * c; + const qreal skewX = qFuzzyIsNull(scaleY) ? 0.0 : qRadiansToDegrees(qAtan(vx / scaleY)); + + ShapeTransform result; + result.rotation = rotation; + result.skewX = skewX; + result.skewY = 0; + result.scaleX = scaleX; + result.scaleY = scaleY; + return result; +} + +QPointF compensatedPositionForNewPivot( + const QPointF &position, + const QPointF &oldPivot, + const QPointF &newPivot, + const QTransform &linearPart) +{ + return position + (oldPivot - linearPart.map(oldPivot)) + - (newPivot - linearPart.map(newPivot)); +} diff --git a/sources/qetgraphicsitem/shapetransform.h b/sources/qetgraphicsitem/shapetransform.h new file mode 100644 index 000000000..b24fc3c74 --- /dev/null +++ b/sources/qetgraphicsitem/shapetransform.h @@ -0,0 +1,90 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#ifndef SHAPETRANSFORM_H +#define SHAPETRANSFORM_H + +#include <QPointF> +#include <QTransform> + +/** + @brief The ShapeTransform struct + Rotation, skew and scale applied to a shape's local geometry around an + arbitrary local pivot point. + + These five scalars plus a pivot are a convenient, directly-editable + basis for 2D affine transforms: every handle in the UI changes exactly + one field, which is what makes per-handle drag math simple. Note that + a plain 2x2 linear map only has 4 true degrees of freedom, one fewer + than (rotation, skewX, skewY, scaleX, scaleY) -- so this is not a + *unique* representation of a matrix, only a convenient one. That + redundancy is harmless for editing (nothing here ever needs to invert + the forward direction) and only matters to decomposeLinear() below, + which exists for later consumers (flattening a group transform onto + its children, importing a foreign matrix) rather than everyday use. + + The resulting matrix is meant to be handed directly to + QGraphicsItem::setTransform(). QGraphicsItem::transformOriginPoint() + is deliberately NOT used anywhere in this design: it only centers + QGraphicsItem's own rotation()/scale() convenience properties, and has + no effect on a custom transform() matrix -- the pivot has to be baked + into the matrix itself, as toMatrix() does. QGraphicsItem::pos() + supplies the translation on top, unchanged from how shapes are + already positioned and moved today. +*/ +struct ShapeTransform +{ + qreal rotation = 0; // degrees + qreal skewX = 0; // degrees + qreal skewY = 0; // degrees + qreal scaleX = 1; + qreal scaleY = 1; + QPointF pivot; // local coordinates; caller decides the default (usually local bbox center) + + bool isIdentity() const; + + // Rotate+shear+scale about the origin, ignoring pivot -- this is the + // "linear part" used by compensatedPositionForNewPivot() and by + // anything that needs to map a direction/offset rather than a point. + QTransform linearPart() const; + + // The pivot-centered matrix to pass to QGraphicsItem::setTransform(). + QTransform toMatrix() const; + + bool operator==(const ShapeTransform &other) const; + bool operator!=(const ShapeTransform &other) const { return !(*this == other); } +}; + +// Canonical decomposition of an arbitrary 2x2 linear map into the five +// scalars above, always returning skewY == 0 (all shear folded into +// skewX -- matching how most authoring tools represent shear on export). +// Rebuilding via ShapeTransform::linearPart() from the result reproduces +// the input matrix exactly; the individual scalar values are not +// guaranteed to match whatever scalars (if any) originally produced that +// matrix, only the matrix itself is guaranteed to match. +ShapeTransform decomposeLinear(const QTransform &linear); + +// Position adjustment needed when the pivot moves, so the shape does not +// visibly jump on screen: call once, at the end of a pivot-handle drag, +// alongside setting the new pivot. +QPointF compensatedPositionForNewPivot( + const QPointF &position, + const QPointF &oldPivot, + const QPointF &newPivot, + const QTransform &linearPart); + +#endif // SHAPETRANSFORM_H diff --git a/sources/qeticons.cpp b/sources/qeticons.cpp index 6d53c46c6..9cde7a0b2 100644 --- a/sources/qeticons.cpp +++ b/sources/qeticons.cpp @@ -128,6 +128,7 @@ namespace QET { QIcon ObjectUnlocked; QIcon Orientations; QIcon PartArc; + QIcon PartBezier; QIcon PartCircle; QIcon PartEllipse; QIcon PartLine; @@ -570,6 +571,7 @@ void QET::Icons::initIcons() ObjectUnlocked .addFile(":/ico/22x22/object-unlocked.png"); Orientations .addFile(":/ico/16x16/orientations.png"); PartArc .addFile(":/ico/22x22/arc.png"); + PartBezier .addFile(":/ico/breeze-icons/scalable/apps/hidef/draw-bezier-curves.svg"); PartCircle .addFile(":/ico/16x16/circle.png"); PartEllipse .addFile(":/ico/22x22/ellipse.png"); PartLine .addFile(":/ico/22x22/line.png"); diff --git a/sources/qeticons.h b/sources/qeticons.h index a81c79e17..5c0e981da 100644 --- a/sources/qeticons.h +++ b/sources/qeticons.h @@ -136,6 +136,7 @@ namespace QET { extern QIcon ObjectUnlocked; extern QIcon Orientations; extern QIcon PartArc; + extern QIcon PartBezier; extern QIcon PartCircle; extern QIcon PartEllipse; extern QIcon PartLine; diff --git a/sources/ui/imagecropdialog.cpp b/sources/ui/imagecropdialog.cpp new file mode 100644 index 000000000..9f2e3a8dc --- /dev/null +++ b/sources/ui/imagecropdialog.cpp @@ -0,0 +1,287 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#include "imagecropdialog.h" + +#include <QDialogButtonBox> +#include <QLabel> +#include <QMouseEvent> +#include <QPainter> +#include <QPushButton> +#include <QVBoxLayout> + +namespace { + // Fits the dialog comfortably on a normal screen regardless of the + // source image's own resolution -- same reasoning, and same value, + // as ImageTransparentColorDialog's identical constant. + constexpr int MAX_DISPLAY_SIZE = 350; +} + +/** + @brief CropAreaWidget::CropAreaWidget + @param sourceImage the full-resolution image to crop + @param initialCropRect a previously-chosen crop rect (in + sourceImage's own coordinates), or an empty QRect to start covering + the whole image + @param parent +*/ +CropAreaWidget::CropAreaWidget(const QImage &sourceImage, const QRect &initialCropRect, QWidget *parent) : + QWidget(parent), + m_source(sourceImage) +{ + const qreal scaleW = qreal(MAX_DISPLAY_SIZE) / m_source.width(); + const qreal scaleH = qreal(MAX_DISPLAY_SIZE) / m_source.height(); + m_displayScale = qMin(qreal(1.0), qMin(scaleW, scaleH)); // never upscale a small image, only ever shrink a large one + + const QSize displaySize = m_source.size() * m_displayScale; + m_displayImageRect = QRect(QPoint(0, 0), displaySize); + setFixedSize(displaySize); + + if (initialCropRect.isEmpty()) + { + // No previous crop to start from -- covers the whole image, so + // the user shrinks it from there rather than having to first + // drag out a rectangle from nothing. + m_cropRect = m_displayImageRect; + } + else + { + // Converting an existing, original-space crop rect back into + // display-space -- the reverse of what cropRect() does going + // the other way. + m_cropRect = QRect( + qRound(initialCropRect.left() * m_displayScale), + qRound(initialCropRect.top() * m_displayScale), + qRound(initialCropRect.width() * m_displayScale), + qRound(initialCropRect.height() * m_displayScale)) + .intersected(m_displayImageRect); + } +} + +/** + @brief CropAreaWidget::resetToFullImage +*/ +void CropAreaWidget::resetToFullImage() +{ + m_cropRect = m_displayImageRect; + update(); + emit cropRectChanged(); +} + +/** + @brief CropAreaWidget::cropRect + @return the crop rectangle in the original, full-resolution image's + own coordinates -- m_cropRect itself is display-space only. +*/ +QRect CropAreaWidget::cropRect() const +{ + QRect r( + qRound(m_cropRect.left() / m_displayScale), + qRound(m_cropRect.top() / m_displayScale), + qRound(m_cropRect.width() / m_displayScale), + qRound(m_cropRect.height() / m_displayScale)); + return r.intersected(m_source.rect()); +} + +/** + @brief CropAreaWidget::handleAt + @param pos widget-space position to test + @return whichever handle (or the rect's own interior, for moving) + pos is close enough to, or DragMode::None if it's not near anything +*/ +CropAreaWidget::DragMode CropAreaWidget::handleAt(const QPoint &pos) const +{ + const int tol = HANDLE_SIZE; // a generous hit area, larger than the drawn handle itself, since a hit-test exactly matching a small handle's visible size is needlessly hard to land + auto near = [&](const QPoint &p) { return (pos - p).manhattanLength() <= tol; }; + + if (near(m_cropRect.topLeft())) return DragMode::ResizeNW; + if (near(m_cropRect.topRight())) return DragMode::ResizeNE; + if (near(m_cropRect.bottomLeft())) return DragMode::ResizeSW; + if (near(m_cropRect.bottomRight())) return DragMode::ResizeSE; + if (near(QPoint(m_cropRect.center().x(), m_cropRect.top()))) return DragMode::ResizeN; + if (near(QPoint(m_cropRect.center().x(), m_cropRect.bottom()))) return DragMode::ResizeS; + if (near(QPoint(m_cropRect.left(), m_cropRect.center().y()))) return DragMode::ResizeW; + if (near(QPoint(m_cropRect.right(), m_cropRect.center().y()))) return DragMode::ResizeE; + + if (m_cropRect.contains(pos)) + return DragMode::Move; + + return DragMode::None; +} + +/** + @brief CropAreaWidget::applyDrag + Recomputes m_cropRect from m_dragStartRect plus however far pos has + moved from m_dragStartPos, according to m_dragMode -- always + clamped to stay within the displayed image and never smaller than + MIN_CROP_SIZE, so the rect can never escape its bounds or collapse + to nothing while being dragged. + @param pos current widget-space mouse position +*/ +void CropAreaWidget::applyDrag(const QPoint &pos) +{ + const QPoint delta = pos - m_dragStartPos; + QRect r = m_dragStartRect; + + auto clampLeft = [&](int v) { r.setLeft(qBound(m_displayImageRect.left(), v, r.right() - MIN_CROP_SIZE)); }; + auto clampRight = [&](int v) { r.setRight(qBound(r.left() + MIN_CROP_SIZE, v, m_displayImageRect.right())); }; + auto clampTop = [&](int v) { r.setTop(qBound(m_displayImageRect.top(), v, r.bottom() - MIN_CROP_SIZE)); }; + auto clampBottom = [&](int v) { r.setBottom(qBound(r.top() + MIN_CROP_SIZE, v, m_displayImageRect.bottom())); }; + + switch (m_dragMode) + { + case DragMode::Move: + { + // Clamping the translation itself, rather than each edge of + // the resulting rect independently -- clamping edges one at + // a time would shrink or distort the rect the instant it + // hit a boundary, instead of just stopping its movement. + QRect moved = m_dragStartRect.translated(delta); + if (moved.left() < m_displayImageRect.left()) + moved.translate(m_displayImageRect.left() - moved.left(), 0); + if (moved.right() > m_displayImageRect.right()) + moved.translate(m_displayImageRect.right() - moved.right(), 0); + if (moved.top() < m_displayImageRect.top()) + moved.translate(0, m_displayImageRect.top() - moved.top()); + if (moved.bottom() > m_displayImageRect.bottom()) + moved.translate(0, m_displayImageRect.bottom() - moved.bottom()); + r = moved; + break; + } + case DragMode::ResizeN: clampTop(m_dragStartRect.top() + delta.y()); break; + case DragMode::ResizeS: clampBottom(m_dragStartRect.bottom() + delta.y()); break; + case DragMode::ResizeE: clampRight(m_dragStartRect.right() + delta.x()); break; + case DragMode::ResizeW: clampLeft(m_dragStartRect.left() + delta.x()); break; + case DragMode::ResizeNE: clampTop(m_dragStartRect.top() + delta.y()); clampRight(m_dragStartRect.right() + delta.x()); break; + case DragMode::ResizeNW: clampTop(m_dragStartRect.top() + delta.y()); clampLeft(m_dragStartRect.left() + delta.x()); break; + case DragMode::ResizeSE: clampBottom(m_dragStartRect.bottom() + delta.y()); clampRight(m_dragStartRect.right() + delta.x()); break; + case DragMode::ResizeSW: clampBottom(m_dragStartRect.bottom() + delta.y()); clampLeft(m_dragStartRect.left() + delta.x()); break; + case DragMode::None: return; + } + + m_cropRect = r; +} + +void CropAreaWidget::mousePressEvent(QMouseEvent *event) +{ + if (event->button() != Qt::LeftButton) + return; + m_dragMode = handleAt(event->pos()); + m_dragStartPos = event->pos(); + m_dragStartRect = m_cropRect; +} + +void CropAreaWidget::mouseMoveEvent(QMouseEvent *event) +{ + if (m_dragMode == DragMode::None) + return; + applyDrag(event->pos()); + update(); + emit cropRectChanged(); +} + +void CropAreaWidget::mouseReleaseEvent(QMouseEvent *event) +{ + Q_UNUSED(event); + m_dragMode = DragMode::None; +} + +/** + @brief CropAreaWidget::paintEvent + Draws the image, dims everything outside the crop rect (four + strips around it, rather than one overlay with a hole cut out of + it, since that would need a more involved clip/composition setup + for no real benefit here), then the rect's own dashed border and + its eight handles. +*/ +void CropAreaWidget::paintEvent(QPaintEvent *) +{ + QPainter painter(this); + painter.drawImage(m_displayImageRect, m_source); + + const QColor dim(0, 0, 0, 140); + painter.fillRect(QRect(m_displayImageRect.left(), m_displayImageRect.top(), + m_displayImageRect.width(), m_cropRect.top() - m_displayImageRect.top()), dim); + painter.fillRect(QRect(m_displayImageRect.left(), m_cropRect.bottom() + 1, + m_displayImageRect.width(), m_displayImageRect.bottom() - m_cropRect.bottom()), dim); + painter.fillRect(QRect(m_displayImageRect.left(), m_cropRect.top(), + m_cropRect.left() - m_displayImageRect.left(), m_cropRect.height()), dim); + painter.fillRect(QRect(m_cropRect.right() + 1, m_cropRect.top(), + m_displayImageRect.right() - m_cropRect.right(), m_cropRect.height()), dim); + + QPen borderPen(Qt::white); + borderPen.setStyle(Qt::DashLine); + painter.setPen(borderPen); + painter.setBrush(Qt::NoBrush); + painter.drawRect(m_cropRect); + + painter.setPen(Qt::black); + painter.setBrush(Qt::white); + auto drawHandle = [&](const QPoint ¢er) { + painter.drawRect(QRect(center.x() - HANDLE_SIZE / 2, center.y() - HANDLE_SIZE / 2, HANDLE_SIZE, HANDLE_SIZE)); + }; + drawHandle(m_cropRect.topLeft()); + drawHandle(m_cropRect.topRight()); + drawHandle(m_cropRect.bottomLeft()); + drawHandle(m_cropRect.bottomRight()); + drawHandle(QPoint(m_cropRect.center().x(), m_cropRect.top())); + drawHandle(QPoint(m_cropRect.center().x(), m_cropRect.bottom())); + drawHandle(QPoint(m_cropRect.left(), m_cropRect.center().y())); + drawHandle(QPoint(m_cropRect.right(), m_cropRect.center().y())); +} + +/** + @brief ImageCropDialog::ImageCropDialog + @param pixmap the image to crop + @param existingCropRect a crop rectangle remembered from a previous + session, or an empty QRect if there isn't one yet + @param parent +*/ +ImageCropDialog::ImageCropDialog(const QPixmap &pixmap, const QRect &existingCropRect, QWidget *parent) : + QDialog(parent) +{ + setWindowTitle(tr("Rogner l'image")); + + m_cropArea = new CropAreaWidget(pixmap.toImage(), existingCropRect, this); + + auto *hint = new QLabel(tr("Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver."), this); + hint->setWordWrap(true); + + auto *resetButton = new QPushButton(tr("Réinitialiser"), this); + resetButton->setToolTip(tr("Revenir à l'image complète, sans rognage")); + connect(resetButton, &QPushButton::clicked, m_cropArea, &CropAreaWidget::resetToFullImage); + + auto *buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this); + buttons->addButton(resetButton, QDialogButtonBox::ResetRole); + + auto *layout = new QVBoxLayout(this); + layout->addWidget(hint); + layout->addWidget(m_cropArea, 0, Qt::AlignHCenter); + layout->addWidget(buttons); + + connect(buttons, &QDialogButtonBox::accepted, this, &QDialog::accept); + connect(buttons, &QDialogButtonBox::rejected, this, &QDialog::reject); +} + +/** + @brief ImageCropDialog::cropRect + @return the chosen crop rectangle, in the original pixmap's own coordinates +*/ +QRect ImageCropDialog::cropRect() const +{ + return m_cropArea->cropRect(); +} diff --git a/sources/ui/imagecropdialog.h b/sources/ui/imagecropdialog.h new file mode 100644 index 000000000..28256d3a5 --- /dev/null +++ b/sources/ui/imagecropdialog.h @@ -0,0 +1,121 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#ifndef IMAGE_CROP_DIALOG_H +#define IMAGE_CROP_DIALOG_H + +#include <QDialog> +#include <QImage> +#include <QRect> +#include <QWidget> + +class QMouseEvent; +class QPaintEvent; +class QPushButton; + +/** + @brief The CropAreaWidget class + Displays the image scaled to fit a reasonable dialog size, with a + draggable, resizable crop rectangle overlaid on top -- the area + outside it dimmed, the usual visual convention for "this part goes + away" during a crop, so it's never ambiguous which region survives. + All internal geometry (the crop rect, drag handling, hit-testing) + works in display-space pixel coordinates; only cropRect() converts + back to the original, full-resolution image's own coordinates for + the caller, the same original-vs-display distinction already used + for colour sampling in ImageTransparentColorDialog. +*/ +class CropAreaWidget : public QWidget +{ + Q_OBJECT + + public: + /// @param sourceImage the full, uncropped image to crop from + /// @param initialCropRect a previously-chosen crop rectangle, in + /// sourceImage's own coordinates, to start from -- an empty + /// (default-constructed) QRect means "no previous crop", i.e. + /// start covering the whole image. + explicit CropAreaWidget(const QImage &sourceImage, const QRect &initialCropRect = QRect(), QWidget *parent = nullptr); + + /// The current crop rectangle, in the original image's own + /// coordinates (not display-space) -- always clamped to the + /// image's own bounds and never degenerate (zero width/height). + QRect cropRect() const; + + public slots: + /// Resets the crop rectangle back to covering the entire image -- + /// the direct answer to "I want to undo the crop, not just + /// adjust it", since dragging every handle back out by hand to + /// exactly the original extent is needlessly fiddly. + void resetToFullImage(); + + signals: + void cropRectChanged(); + + protected: + void paintEvent(QPaintEvent *event) override; + void mousePressEvent(QMouseEvent *event) override; + void mouseMoveEvent(QMouseEvent *event) override; + void mouseReleaseEvent(QMouseEvent *event) override; + + private: + enum class DragMode { None, Move, ResizeN, ResizeS, ResizeE, ResizeW, ResizeNE, ResizeNW, ResizeSE, ResizeSW }; + + DragMode handleAt(const QPoint &pos) const; + void applyDrag(const QPoint &pos); + + QImage m_source; + qreal m_displayScale = 1.0; + QRect m_displayImageRect; // where the (possibly scaled) pixmap actually sits within this widget + QRect m_cropRect; // in display-space, relative to m_displayImageRect's own origin + + DragMode m_dragMode = DragMode::None; + QPoint m_dragStartPos; + QRect m_dragStartRect; + + static constexpr int HANDLE_SIZE = 8; + static constexpr int MIN_CROP_SIZE = 16; +}; + +/** + @brief The ImageCropDialog class + Self-contained modal dialog wrapping CropAreaWidget with OK/Cancel -- + the same reasoning as ImageTransparentColorDialog: this needs + neither undo-during-drag nor coexistence with other tools, only a + rectangle the user drags out against a pixmap already in hand. +*/ +class ImageCropDialog : public QDialog +{ + Q_OBJECT + + public: + /// @param pixmap the full, uncropped image to crop from + /// @param existingCropRect a crop rectangle remembered from a + /// previous session, shown from the start rather than resetting + /// to the full image every time the dialog is reopened -- an + /// empty QRect means there isn't one yet. + explicit ImageCropDialog(const QPixmap &pixmap, const QRect &existingCropRect = QRect(), QWidget *parent = nullptr); + + /// The chosen crop rectangle, in the original pixmap's own + /// coordinates. Only meaningful after the dialog was accepted. + QRect cropRect() const; + + private: + CropAreaWidget *m_cropArea; +}; + +#endif // IMAGE_CROP_DIALOG_H diff --git a/sources/ui/imagepropertieswidget.cpp b/sources/ui/imagepropertieswidget.cpp index c6437fa14..b2cccca2b 100644 --- a/sources/ui/imagepropertieswidget.cpp +++ b/sources/ui/imagepropertieswidget.cpp @@ -20,6 +20,7 @@ #include "../QPropertyUndoCommand/qpropertyundocommand.h" #include "../diagram.h" #include "../qetgraphicsitem/diagramimageitem.h" +#include "../qeticons.h" #include "../ui_imagepropertieswidget.h" /** @@ -34,6 +35,11 @@ ImagePropertiesWidget::ImagePropertiesWidget(DiagramImageItem *image, QWidget *p m_image(nullptr) { ui->setupUi(this); + // Matches the .ui file's own initial checked="true" -- toggled() + // only fires on a subsequent CHANGE, not for the state a widget + // already starts in, so the icon needs setting explicitly here or + // the button would show blank until first clicked. + ui->m_lock_ratio_tb->setIcon(QET::Icons::ObjectLocked); this->setDisabled(true); setImageItem(image); } @@ -58,12 +64,16 @@ void ImagePropertiesWidget::setImageItem(DiagramImageItem *image) this->setEnabled(true); if (m_image == image) return; if (m_image) - disconnect(m_image, &QGraphicsObject::scaleChanged, this, &ImagePropertiesWidget::updateUi); + disconnect(m_image, &DiagramImageItem::transformChanged, this, &ImagePropertiesWidget::updateUi); m_image = image; - connect(m_image, &QGraphicsObject::scaleChanged, this, &ImagePropertiesWidget::updateUi); + connect(m_image, &DiagramImageItem::transformChanged, this, &ImagePropertiesWidget::updateUi); m_movable = image->isMovable(); - m_scale = m_image->scale(); + m_scaleX = m_image->scaleFactorX(); + m_scaleY = m_image->scaleFactorY(); + m_rotation = m_image->rotationAngle(); + m_skewX = m_image->skewX(); + m_skewY = m_image->skewY(); updateUi(); } @@ -77,16 +87,20 @@ void ImagePropertiesWidget::apply() if (m_image->diagram()) { - if (m_live_edit) disconnect(m_image, &QGraphicsObject::scaleChanged, this, &ImagePropertiesWidget::updateUi); + if (m_live_edit) disconnect(m_image, &DiagramImageItem::transformChanged, this, &ImagePropertiesWidget::updateUi); QUndoCommand *undo = associatedUndo(); if (undo) m_image->diagram()->undoStack().push(undo); - if (m_live_edit) connect(m_image, &QGraphicsObject::scaleChanged, this, &ImagePropertiesWidget::updateUi); + if (m_live_edit) connect(m_image, &DiagramImageItem::transformChanged, this, &ImagePropertiesWidget::updateUi); } - m_scale = m_image->scale(); + m_scaleX = m_image->scaleFactorX(); + m_scaleY = m_image->scaleFactorY(); + m_rotation = m_image->rotationAngle(); + m_skewX = m_image->skewX(); + m_skewY = m_image->skewY(); } /** @@ -97,7 +111,11 @@ void ImagePropertiesWidget::reset() { if(!m_image) return; - m_image->setScale(m_scale); + m_image->setScaleFactorX(m_scaleX); + m_image->setScaleFactorY(m_scaleY); + m_image->setRotationAngle(m_rotation); + m_image->setSkewX(m_skewX); + m_image->setSkewY(m_skewY); m_image->setMovable(m_movable); updateUi(); } @@ -115,13 +133,19 @@ bool ImagePropertiesWidget::setLiveEdit(bool live_edit) if (m_live_edit) { - connect (ui->m_scale_slider, &QSlider::sliderReleased, this, &ImagePropertiesWidget::apply); - connect (ui->m_scale_sb, &QSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + connect (ui->m_width_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + connect (ui->m_height_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + connect (ui->m_angle_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + connect (ui->m_skew_x_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + connect (ui->m_skew_y_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); } else { - disconnect (ui->m_scale_slider, &QSlider::sliderReleased, this, &ImagePropertiesWidget::apply); - disconnect (ui->m_scale_sb, &QSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + disconnect (ui->m_width_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + disconnect (ui->m_height_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + disconnect (ui->m_angle_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + disconnect (ui->m_skew_x_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); + disconnect (ui->m_skew_y_sb, &QDoubleSpinBox::editingFinished, this, &ImagePropertiesWidget::apply); } return true; @@ -129,18 +153,44 @@ bool ImagePropertiesWidget::setLiveEdit(bool live_edit) /** @brief ImagePropertiesWidget::associatedUndo - @return the change in an undo command (ItemResizerCommand). - If there is no change return nullptr + @return the change in an undo command. If there is no change return + nullptr. Chains scaleFactorX, scaleFactorY, rotationAngle, skewX and + skewY as separate QPropertyUndoCommands, matching the established + "check each field, chain if changed" pattern used elsewhere -- each + of these is genuinely independent (the resize/rotate/skew handles + can set any of them without touching the others), so a single + combined command wouldn't correctly capture "only two of five + fields actually changed". */ QUndoCommand* ImagePropertiesWidget::associatedUndo() const { + const qreal newScaleX = ui->m_width_sb->value() / 100.0; + const qreal newScaleY = ui->m_height_sb->value() / 100.0; + const qreal newRotation = ui->m_angle_sb->value(); + const qreal newSkewX = ui->m_skew_x_sb->value(); + const qreal newSkewY = ui->m_skew_y_sb->value(); + + QPropertyUndoCommand *undo = nullptr; + auto chain = [&](const char *property, qreal oldValue, qreal newValue, const QString &text) + { + if (qFuzzyCompare(oldValue, newValue)) + return; + if (undo) + new QPropertyUndoCommand(m_image, property, oldValue, newValue, undo); + else + { + undo = new QPropertyUndoCommand(m_image, property, oldValue, newValue); + undo->enableAnimation(); + undo->setText(text); + } + }; + + chain("scaleFactorX", m_scaleX, newScaleX, tr("Modifier la largeur d'une image")); + chain("scaleFactorY", m_scaleY, newScaleY, tr("Modifier la hauteur d'une image")); + chain("rotationAngle", m_rotation, newRotation, tr("Modifier l'angle d'une image")); + chain("skewX", m_skewX, newSkewX, tr("Modifier l'inclinaison d'une image")); + chain("skewY", m_skewY, newSkewY, tr("Modifier l'inclinaison d'une image")); - qreal value = ui->m_scale_slider->value(); - value /= 100; - if (m_scale == value) return nullptr; - QPropertyUndoCommand *undo = new QPropertyUndoCommand(m_image, "scale", m_scale, value); - undo->enableAnimation(); - undo->setText(tr("Modifier la taille d'une image")); return undo; } @@ -150,20 +200,167 @@ QUndoCommand* ImagePropertiesWidget::associatedUndo() const */ void ImagePropertiesWidget::updateUi() { - if (!m_image) return; - ui->m_scale_slider->setValue(m_image->scale() * 100); + // Two different uses of the same flag: an entry guard here (skip + // entirely if a locked width/height operation is already in + // progress elsewhere -- its own explicit updateUi() call once + // finished is what actually refreshes things), and, immediately + // below, a re-entrancy guard around this function's OWN setValue() + // calls, so they can't recurse back into + // on_m_width_sb_valueChanged()/on_m_height_sb_valueChanged() when + // this runs normally (e.g. from setImageItem(), or a transformChanged + // signal from a resize handle used directly on the canvas while + // this dialog is open). + if (!m_image || m_updating_ratio) return; + + m_updating_ratio = true; + ui->m_width_sb->setValue(m_image->scaleFactorX() * 100.0); + ui->m_height_sb->setValue(m_image->scaleFactorY() * 100.0); + m_updating_ratio = false; + + ui->m_angle_sb->setValue(m_image->rotationAngle()); + ui->m_skew_x_sb->setValue(m_image->skewX()); + ui->m_skew_y_sb->setValue(m_image->skewY()); ui->m_lock_pos_cb->setChecked(!m_image->isMovable()); } /** - @brief ImagePropertiesWidget::on_m_scale_slider_valueChanged - Update the size of image when move slider. - @param value + @brief ImagePropertiesWidget::on_m_lock_ratio_tb_toggled + Keeps the button's own icon and tooltip in sync with its checked + state -- Qt shows the checked/unchecked state visually (a sunken + look) regardless, but the lock/unlock glyph makes the meaning + obvious at a glance rather than needing that convention noticed. + @param checked */ -void ImagePropertiesWidget::on_m_scale_slider_valueChanged(int value) +void ImagePropertiesWidget::on_m_lock_ratio_tb_toggled(bool checked) { - qreal scale = value; - m_image->setScale(scale / 100); + ui->m_lock_ratio_tb->setIcon(checked ? QET::Icons::ObjectLocked : QET::Icons::ObjectUnlocked); + ui->m_lock_ratio_tb->setToolTip(checked + ? tr("Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.") + : tr("Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.")); +} + +/** + @brief ImagePropertiesWidget::on_m_restore_ratio_pb_clicked + The same action as the item's own "Restaurer les proportions" + context-menu entry, offered here too since this dialog is exactly + where someone would notice the proportions are off in the first + place. Deliberately bypasses on_m_height_sb_valueChanged()'s own + lock-following logic (guarded by m_updating_ratio, then applied + directly rather than through the spinbox's own signal) rather than + going through it normally: if the lock happened to be engaged, + that logic would treat this as an ordinary edit and scale width by + the same ratio the height change just applied -- compounding into + some other, unrelated value instead of the plain "make height + match width" this button promises regardless of lock state. +*/ +void ImagePropertiesWidget::on_m_restore_ratio_pb_clicked() +{ + if (!m_image) return; + const qreal newScaleY = m_image->scaleFactorX(); + m_updating_ratio = true; + ui->m_height_sb->setValue(newScaleY * 100.0); + m_updating_ratio = false; + m_image->setScaleFactorY(newScaleY); + apply(); +} + +/** + @brief ImagePropertiesWidget::on_m_width_sb_valueChanged + Applies the new width live, and -- if "Conserver les proportions" is + checked -- scales height by the same ratio this change just applied + to width, so the two stay locked together. Guarded by + m_updating_ratio: the setValue() call below would otherwise + re-trigger on_m_height_sb_valueChanged(), which would then try to + scale width again in response, recursing indefinitely. + @param value the new width, as a percentage +*/ +void ImagePropertiesWidget::on_m_width_sb_valueChanged(double value) +{ + if (!m_image || m_updating_ratio) return; + + const qreal oldScaleX = m_image->scaleFactorX(); + const qreal newScaleX = value / 100.0; + const bool wasLocked = ui->m_lock_ratio_tb->isChecked(); + + // Guards updateUi() itself here, not just the mutual spinbox + // updates below: setScaleFactorX() emits transformChanged() + // immediately, synchronously calling updateUi() before this + // function gets any further -- at that exact moment scaleX has + // already changed but scaleY hasn't caught up yet, so updateUi()'s + // "auto-unlock if currently mismatched" check would fire and + // uncheck the lock before the compensating height change below + // ever runs, defeating the lock on every single use. Released + // before the explicit updateUi() call at the end, once both axes + // genuinely agree again (if locked) and that check is meaningful. + m_updating_ratio = true; + m_image->setScaleFactorX(newScaleX); + + if (wasLocked && !qFuzzyIsNull(oldScaleX)) + { + const qreal ratio = newScaleX / oldScaleX; + const qreal newScaleY = m_image->scaleFactorY() * ratio; + ui->m_height_sb->setValue(newScaleY * 100.0); + m_image->setScaleFactorY(newScaleY); + } + m_updating_ratio = false; + updateUi(); +} + +/** + @brief ImagePropertiesWidget::on_m_height_sb_valueChanged + Mirror of on_m_width_sb_valueChanged() -- see its comment. + @param value the new height, as a percentage +*/ +void ImagePropertiesWidget::on_m_height_sb_valueChanged(double value) +{ + if (!m_image || m_updating_ratio) return; + + const qreal oldScaleY = m_image->scaleFactorY(); + const qreal newScaleY = value / 100.0; + const bool wasLocked = ui->m_lock_ratio_tb->isChecked(); + + m_updating_ratio = true; // see on_m_width_sb_valueChanged()'s identical comment + m_image->setScaleFactorY(newScaleY); + + if (wasLocked && !qFuzzyIsNull(oldScaleY)) + { + const qreal ratio = newScaleY / oldScaleY; + const qreal newScaleX = m_image->scaleFactorX() * ratio; + ui->m_width_sb->setValue(newScaleX * 100.0); + m_image->setScaleFactorX(newScaleX); + } + m_updating_ratio = false; + updateUi(); +} + +/** + @brief ImagePropertiesWidget::on_m_angle_sb_valueChanged + @param value the new rotation, in degrees +*/ +void ImagePropertiesWidget::on_m_angle_sb_valueChanged(double value) +{ + if (!m_image) return; + m_image->setRotationAngle(value); +} + +/** + @brief ImagePropertiesWidget::on_m_skew_x_sb_valueChanged + @param value the new X skew, in degrees +*/ +void ImagePropertiesWidget::on_m_skew_x_sb_valueChanged(double value) +{ + if (!m_image) return; + m_image->setSkewX(value); +} + +/** + @brief ImagePropertiesWidget::on_m_skew_y_sb_valueChanged + @param value the new Y skew, in degrees +*/ +void ImagePropertiesWidget::on_m_skew_y_sb_valueChanged(double value) +{ + if (!m_image) return; + m_image->setSkewY(value); } /** diff --git a/sources/ui/imagepropertieswidget.h b/sources/ui/imagepropertieswidget.h index 0cd803e89..438b5e3b8 100644 --- a/sources/ui/imagepropertieswidget.h +++ b/sources/ui/imagepropertieswidget.h @@ -48,14 +48,33 @@ class ImagePropertiesWidget : public PropertiesEditorWidget void updateUi() override; private slots: - void on_m_scale_slider_valueChanged(int value); + void on_m_width_sb_valueChanged(double value); + void on_m_height_sb_valueChanged(double value); + void on_m_angle_sb_valueChanged(double value); + void on_m_skew_x_sb_valueChanged(double value); + void on_m_skew_y_sb_valueChanged(double value); + void on_m_lock_ratio_tb_toggled(bool checked); + void on_m_restore_ratio_pb_clicked(); void on_m_lock_pos_cb_clicked(); private: Ui::ImagePropertiesWidget *ui; DiagramImageItem *m_image; bool m_movable; - qreal m_scale; + // All tracked independently -- the image may already be + // non-uniformly scaled, rotated, and/or skewed via the resize/ + // rotate/skew handles before this dialog is even opened, and + // undo/reset have to restore each to whatever it actually was. + qreal m_scaleX; + qreal m_scaleY; + qreal m_rotation; + qreal m_skewX; + qreal m_skewY; + // Guards the width/height spinboxes' mutual updates when + // "Conserver les proportions" is checked, so setting one + // programmatically in response to the other doesn't re-trigger + // its own valueChanged and recurse. + bool m_updating_ratio = false; }; #endif // IMAGEPROPERTIESWIDGET_H diff --git a/sources/ui/imagepropertieswidget.ui b/sources/ui/imagepropertieswidget.ui index f3bd2bcda..36ff7ddf3 100644 --- a/sources/ui/imagepropertieswidget.ui +++ b/sources/ui/imagepropertieswidget.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>244</width> - <height>105</height> + <width>280</width> + <height>230</height> </rect> </property> <property name="windowTitle"> @@ -17,47 +17,149 @@ <property name="sizeConstraint"> <enum>QLayout::SetMinimumSize</enum> </property> - <item row="2" column="0"> + <item row="0" column="0"> + <widget class="QLabel" name="label_width"> + <property name="text"> + <string>Largeur</string> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QDoubleSpinBox" name="m_width_sb"> + <property name="suffix"> + <string> %</string> + </property> + <property name="decimals"> + <number>1</number> + </property> + <property name="minimum"> + <double>1.000000000000000</double> + </property> + <property name="maximum"> + <double>1000.000000000000000</double> + </property> + </widget> + </item> + <item row="0" column="2" rowspan="2"> + <widget class="QToolButton" name="m_lock_ratio_tb"> + <property name="toolTip"> + <string>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</string> + </property> + <property name="checkable"> + <bool>true</bool> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="label_height"> + <property name="text"> + <string>Hauteur</string> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QDoubleSpinBox" name="m_height_sb"> + <property name="suffix"> + <string> %</string> + </property> + <property name="decimals"> + <number>1</number> + </property> + <property name="minimum"> + <double>1.000000000000000</double> + </property> + <property name="maximum"> + <double>1000.000000000000000</double> + </property> + </widget> + </item> + <item row="2" column="0" colspan="3"> + <widget class="QPushButton" name="m_restore_ratio_pb"> + <property name="text"> + <string>Restaurer les proportions</string> + </property> + </widget> + </item> + <item row="3" column="0"> + <widget class="QLabel" name="label_angle"> + <property name="text"> + <string>Angle</string> + </property> + </widget> + </item> + <item row="3" column="1"> + <widget class="QDoubleSpinBox" name="m_angle_sb"> + <property name="suffix"> + <string> °</string> + </property> + <property name="decimals"> + <number>1</number> + </property> + <property name="minimum"> + <double>-360.000000000000000</double> + </property> + <property name="maximum"> + <double>360.000000000000000</double> + </property> + </widget> + </item> + <item row="4" column="0"> + <widget class="QLabel" name="label_skew_x"> + <property name="text"> + <string>Inclinaison X</string> + </property> + </widget> + </item> + <item row="4" column="1"> + <widget class="QDoubleSpinBox" name="m_skew_x_sb"> + <property name="suffix"> + <string> °</string> + </property> + <property name="decimals"> + <number>1</number> + </property> + <property name="minimum"> + <double>-85.000000000000000</double> + </property> + <property name="maximum"> + <double>85.000000000000000</double> + </property> + </widget> + </item> + <item row="5" column="0"> + <widget class="QLabel" name="label_skew_y"> + <property name="text"> + <string>Inclinaison Y</string> + </property> + </widget> + </item> + <item row="5" column="1"> + <widget class="QDoubleSpinBox" name="m_skew_y_sb"> + <property name="suffix"> + <string> °</string> + </property> + <property name="decimals"> + <number>1</number> + </property> + <property name="minimum"> + <double>-85.000000000000000</double> + </property> + <property name="maximum"> + <double>85.000000000000000</double> + </property> + </widget> + </item> + <item row="6" column="0" colspan="2"> <widget class="QCheckBox" name="m_lock_pos_cb"> <property name="text"> <string>Verrouiller la position</string> </property> </widget> </item> - <item row="0" column="0"> - <widget class="QLabel" name="label"> - <property name="text"> - <string>Dimension de l'image</string> - </property> - </widget> - </item> - <item row="1" column="0"> - <widget class="QSlider" name="m_scale_slider"> - <property name="minimum"> - <number>1</number> - </property> - <property name="maximum"> - <number>400</number> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item row="1" column="1"> - <widget class="QSpinBox" name="m_scale_sb"> - <property name="suffix"> - <string>%</string> - </property> - <property name="minimum"> - <number>1</number> - </property> - <property name="maximum"> - <number>400</number> - </property> - </widget> - </item> - <item row="3" column="0"> + <item row="7" column="0"> <spacer name="verticalSpacer"> <property name="orientation"> <enum>Qt::Vertical</enum> @@ -73,38 +175,5 @@ </layout> </widget> <resources/> - <connections> - <connection> - <sender>m_scale_slider</sender> - <signal>valueChanged(int)</signal> - <receiver>m_scale_sb</receiver> - <slot>setValue(int)</slot> - <hints> - <hint type="sourcelabel"> - <x>81</x> - <y>40</y> - </hint> - <hint type="destinationlabel"> - <x>190</x> - <y>40</y> - </hint> - </hints> - </connection> - <connection> - <sender>m_scale_sb</sender> - <signal>valueChanged(int)</signal> - <receiver>m_scale_slider</receiver> - <slot>setValue(int)</slot> - <hints> - <hint type="sourcelabel"> - <x>190</x> - <y>40</y> - </hint> - <hint type="destinationlabel"> - <x>81</x> - <y>40</y> - </hint> - </hints> - </connection> - </connections> + <connections/> </ui> diff --git a/sources/ui/imagetransparentcolordialog.cpp b/sources/ui/imagetransparentcolordialog.cpp new file mode 100644 index 000000000..62bcf8813 --- /dev/null +++ b/sources/ui/imagetransparentcolordialog.cpp @@ -0,0 +1,335 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#include "imagetransparentcolordialog.h" + +#include <QDialogButtonBox> +#include <QGridLayout> +#include <QHBoxLayout> +#include <QLabel> +#include <QMouseEvent> +#include <QPainter> +#include <QPushButton> +#include <QSlider> +#include <QVBoxLayout> +#include <QVector> + +namespace { + // Fits the dialog comfortably on a normal screen regardless of the + // source image's own resolution -- a photo straight off a phone + // would otherwise make this dialog enormous. + constexpr int MAX_DISPLAY_SIZE = 350; +} + +/** + @brief ClickableImageLabel::ClickableImageLabel + @param sourceImage the full-resolution image to display and sample from + @param parent +*/ +ClickableImageLabel::ClickableImageLabel(const QImage &sourceImage, QWidget *parent) : + QLabel(parent), + m_source(sourceImage) +{ + const qreal scaleW = qreal(MAX_DISPLAY_SIZE) / m_source.width(); + const qreal scaleH = qreal(MAX_DISPLAY_SIZE) / m_source.height(); + m_displayScale = qMin(qreal(1.0), qMin(scaleW, scaleH)); // never upscale a small image, only ever shrink a large one + + const QImage displayImage = (m_displayScale < 1.0) + ? m_source.scaled(m_source.size() * m_displayScale, Qt::KeepAspectRatio, Qt::SmoothTransformation) + : m_source; + setPixmap(QPixmap::fromImage(displayImage)); + setCursor(Qt::CrossCursor); + setToolTip(tr("Cliquez pour choisir une couleur")); +} + +/** + @brief ClickableImageLabel::mousePressEvent + Maps the click back to the original, full-resolution image before + sampling -- see the class-level comment for why. + @param event +*/ +void ClickableImageLabel::mousePressEvent(QMouseEvent *event) +{ + if (event->button() != Qt::LeftButton || pixmap().isNull()) + return; + + // The label may be larger than its pixmap (layout stretching); the + // pixmap itself is always drawn centered by Qt's default alignment, + // so the click has to be re-based against the pixmap's own rect + // within the label, not the label's own top-left. + const QRect pixmapRect( + (width() - pixmap().width()) / 2, + (height() - pixmap().height()) / 2, + pixmap().width(), pixmap().height()); + if (!pixmapRect.contains(event->pos())) + return; + + const QPoint withinPixmap = event->pos() - pixmapRect.topLeft(); + QPoint originalPos(qRound(withinPixmap.x() / m_displayScale), qRound(withinPixmap.y() / m_displayScale)); + originalPos.setX(qBound(0, originalPos.x(), m_source.width() - 1)); + originalPos.setY(qBound(0, originalPos.y(), m_source.height() - 1)); + + emit colorPicked(m_source.pixelColor(originalPos)); +} + +/** + @brief ImageTransparentColorDialog::ImageTransparentColorDialog + @param pixmap the image to pick a transparent colour from + @param parent +*/ +ImageTransparentColorDialog::ImageTransparentColorDialog(const QPixmap &basePixmap, const QList<QColor> &existingColors, + int existingTolerance, QWidget *parent) : + QDialog(parent), + m_sourceImage(basePixmap.toImage()), + m_pickedColors(existingColors), + m_tolerance(existingTolerance) +{ + setWindowTitle(tr("Couleur transparente")); + + m_sourceLabel = new ClickableImageLabel(m_sourceImage, this); + m_previewLabel = new QLabel(this); + + m_hintLabel = new QLabel(this); + + m_toleranceSlider = new QSlider(Qt::Horizontal, this); + m_toleranceSlider->setRange(0, 100); + m_toleranceSlider->setValue(m_tolerance); + + auto *buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this); + m_okButton = buttons->button(QDialogButtonBox::Ok); + m_okButton->setEnabled(!m_pickedColors.isEmpty()); // nothing to apply until at least one colour has been picked + + auto *grid = new QGridLayout; + grid->addWidget(new QLabel(tr("Image source")), 0, 0); + grid->addWidget(new QLabel(tr("Aperçu")), 0, 1); + grid->addWidget(m_sourceLabel, 1, 0); + grid->addWidget(m_previewLabel, 1, 1); + + // An empty row to start with if existingColors is empty -- + // rebuildSwatches() below populates it either way (including from + // existingColors on the first call), and again as colours get + // added or removed. + m_swatchesLayout = new QHBoxLayout; + + auto *colorRow = new QHBoxLayout; + colorRow->addWidget(m_hintLabel); + colorRow->addStretch(); + colorRow->addLayout(m_swatchesLayout); + + auto *toleranceRow = new QHBoxLayout; + toleranceRow->addWidget(new QLabel(tr("Tolérance"))); + toleranceRow->addWidget(m_toleranceSlider); + + auto *mainLayout = new QVBoxLayout(this); + mainLayout->addLayout(grid); + mainLayout->addLayout(colorRow); + mainLayout->addLayout(toleranceRow); + mainLayout->addWidget(buttons); + + connect(m_sourceLabel, &ClickableImageLabel::colorPicked, this, &ImageTransparentColorDialog::onColorPicked); + connect(m_toleranceSlider, &QSlider::valueChanged, this, &ImageTransparentColorDialog::onToleranceChanged); + connect(buttons, &QDialogButtonBox::accepted, this, &QDialog::accept); + connect(buttons, &QDialogButtonBox::rejected, this, &QDialog::reject); + + rebuildSwatches(); // shows existingColors immediately, if any + updatePreview(); // and the preview already reflects them too, rather than only appearing after the next pick +} + +/** + @brief ImageTransparentColorDialog::onColorPicked + Adds to the set of picked colours rather than replacing the previous + pick -- clicking a second, different pixel used to silently discard + the first choice, with no way to work with more than one colour (a + white background *and* a grey border, say) in the same pass. + Skips an exact duplicate rather than adding a second, indistinguishable + swatch for it. + @param color the colour sampled from the source image +*/ +void ImageTransparentColorDialog::onColorPicked(const QColor &color) +{ + if (m_pickedColors.contains(color)) + return; + + m_pickedColors.append(color); + m_okButton->setEnabled(true); + rebuildSwatches(); + updatePreview(); +} + +/** + @brief ImageTransparentColorDialog::removeColor + Removes one colour from the set -- the counterpart onColorPicked() + was missing entirely before: picking the wrong pixel by mistake had + no way to undo except cancelling the whole dialog and starting over. + @param color the colour to remove +*/ +void ImageTransparentColorDialog::removeColor(const QColor &color) +{ + m_pickedColors.removeAll(color); + m_okButton->setEnabled(!m_pickedColors.isEmpty()); + rebuildSwatches(); + updatePreview(); +} + +/** + @brief ImageTransparentColorDialog::rebuildSwatches + Rebuilds the row of picked-colour swatches from scratch against the + current m_pickedColors -- simpler and safer than trying to + incrementally add/remove individual widgets in sync with the list, + given the list only ever changes one colour at a time and is never + large enough for a full rebuild to be a real cost. +*/ +void ImageTransparentColorDialog::rebuildSwatches() +{ + QLayoutItem *item; + while ((item = m_swatchesLayout->takeAt(0)) != nullptr) + { + delete item->widget(); + delete item; + } + + for (const QColor &color : std::as_const(m_pickedColors)) + { + auto *swatch = new QPushButton(this); + swatch->setFixedSize(24, 24); + swatch->setStyleSheet(QStringLiteral("background-color: rgb(%1,%2,%3); border: 1px solid palette(mid);") + .arg(color.red()).arg(color.green()).arg(color.blue())); + swatch->setToolTip(tr("rgb(%1, %2, %3) -- cliquer pour retirer").arg(color.red()).arg(color.green()).arg(color.blue())); + connect(swatch, &QPushButton::clicked, this, [this, color]() { removeColor(color); }); + m_swatchesLayout->addWidget(swatch); + } + + m_hintLabel->setText(m_pickedColors.isEmpty() + ? tr("Cliquez sur l'image pour choisir une couleur") + : tr("Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer")); +} + +/** + @brief ImageTransparentColorDialog::onToleranceChanged + @param value the new tolerance, 0-100 +*/ +void ImageTransparentColorDialog::onToleranceChanged(int value) +{ + m_tolerance = value; + if (!m_pickedColors.isEmpty()) + updatePreview(); +} + +/** + @brief ImageTransparentColorDialog::updatePreview + Recomputes the checkerboard-backed preview against the current set + of picked colours and the shared tolerance. Always runs against + m_sourceImage (the original, full-resolution image), not any + already-keyed result -- so adjusting the tolerance, or adding or + removing a colour, re-evaluates every picked colour from scratch + each time rather than compounding successive passes. +*/ +void ImageTransparentColorDialog::updatePreview() +{ + const QImage keyed = applyColorKey(m_sourceImage, m_pickedColors, m_tolerance); + m_previewLabel->setPixmap(onCheckerboard(keyed)); +} + +/** + @brief ImageTransparentColorDialog::resultPixmap + @return the colour-keyed pixmap against every picked colour, or the + original pixmap unchanged if none were ever picked (the Ok button + stays disabled until at least one is, so this is mostly a defensive + fallback). +*/ +QPixmap ImageTransparentColorDialog::resultPixmap() const +{ + if (m_pickedColors.isEmpty()) + return QPixmap::fromImage(m_sourceImage); + return QPixmap::fromImage(applyColorKey(m_sourceImage, m_pickedColors, m_tolerance)); +} + +/** + @brief ImageTransparentColorDialog::applyColorKey + Binary transparency within tolerance, not a smooth falloff: every + pixel within `tolerance` (0-100, mapped onto the maximum possible + RGB distance) of *any* of keyColors becomes fully transparent, + everything else keeps its existing alpha untouched. Squared distance + throughout, avoiding a sqrt per pixel; breaks out of the inner loop + on the first matching colour, since further matches wouldn't change + the outcome. + @param source the image to key + @param keyColors the colours to make transparent + @param tolerance 0 (exact match only) to 100 (everything) + @return the resulting image, always in Format_ARGB32 +*/ +QImage ImageTransparentColorDialog::applyColorKey(const QImage &source, const QList<QColor> &keyColors, int tolerance) +{ + QImage result = source.convertToFormat(QImage::Format_ARGB32); + if (keyColors.isEmpty()) + return result; + + QVector<QRgb> keys; + keys.reserve(keyColors.size()); + for (const QColor &c : keyColors) + keys.append(c.rgb()); + + const qint64 threshold = qint64(tolerance) * tolerance * 3 * 255 * 255 / (100 * 100); + + for (int y = 0; y < result.height(); ++y) + { + QRgb *line = reinterpret_cast<QRgb *>(result.scanLine(y)); + for (int x = 0; x < result.width(); ++x) + { + const QRgb px = line[x]; + for (const QRgb &key : keys) + { + const int dr = qRed(px) - qRed(key), dg = qGreen(px) - qGreen(key), db = qBlue(px) - qBlue(key); + const qint64 distSq = qint64(dr) * dr + qint64(dg) * dg + qint64(db) * db; + if (distSq <= threshold) + { + line[x] = qRgba(qRed(px), qGreen(px), qBlue(px), 0); + break; + } + } + } + } + return result; +} + +/** + @brief ImageTransparentColorDialog::onCheckerboard + Composites `image` over a light/dark checkerboard, the standard + visual convention for showing where an image is transparent -- + without this, a fully keyed-out region would just show whatever + widget background happens to be behind it, easy to misread as "still + opaque, just white" rather than "correctly transparent". + @param image the (possibly partially transparent) image to composite + @return a checkerboard-backed pixmap ready to display +*/ +QPixmap ImageTransparentColorDialog::onCheckerboard(const QImage &image) +{ + const int cell = 8; + QPixmap board(image.size()); + QPainter painter(&board); + for (int y = 0; y < image.height(); y += cell) + { + for (int x = 0; x < image.width(); x += cell) + { + const bool dark = ((x / cell) + (y / cell)) % 2 == 0; + painter.fillRect(x, y, cell, cell, dark ? QColor(200, 200, 200) : QColor(255, 255, 255)); + } + } + painter.drawImage(0, 0, image); + painter.end(); + return board; +} diff --git a/sources/ui/imagetransparentcolordialog.h b/sources/ui/imagetransparentcolordialog.h new file mode 100644 index 000000000..691983057 --- /dev/null +++ b/sources/ui/imagetransparentcolordialog.h @@ -0,0 +1,133 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#ifndef IMAGE_TRANSPARENT_COLOR_DIALOG_H +#define IMAGE_TRANSPARENT_COLOR_DIALOG_H + +#include <QDialog> +#include <QImage> +#include <QColor> +#include <QLabel> +#include <QList> + +class QSlider; +class QPushButton; +class QHBoxLayout; +class QMouseEvent; + +/** + @brief The ClickableImageLabel class + Displays an image scaled to fit a reasonable dialog size, but always + samples the picked color from the original, full-resolution image at + the corresponding coordinate -- never from the (possibly smoothly + interpolated, and therefore color-blended) scaled-down pixmap being + displayed, which would make the picked color subtly wrong for + exactly the pixels near an edge where it matters most. +*/ +class ClickableImageLabel : public QLabel +{ + Q_OBJECT + + public: + explicit ClickableImageLabel(const QImage &sourceImage, QWidget *parent = nullptr); + + signals: + void colorPicked(const QColor &color); + + protected: + void mousePressEvent(QMouseEvent *event) override; + + private: + QImage m_source; + qreal m_displayScale = 1.0; +}; + +/** + @brief The ImageTransparentColorDialog class + Lets the user click directly on a preview of the image to sample one + or more colors -- each click adds to the set rather than replacing + the previous pick, shown as a row of removable swatches -- adjust a + shared tolerance, and see a live checkerboard-backed preview of the + result before committing. A self-contained modal dialog rather than + a diagram-level "click the canvas to pick" interaction mode, since + this needs neither undo-during-drag nor coexistence with other + tools; it only ever needs a handful of clicks, evaluated against a + pixmap the caller already has in hand. +*/ +class ImageTransparentColorDialog : public QDialog +{ + Q_OBJECT + + public: + /// @param basePixmap the pristine source to pick colours from -- + /// the caller's responsibility to pass the true original, not + /// an already colour-keyed result, or previously-transparent + /// areas would show as plain background rather than a pickable + /// surface, and re-picking the same colour would be a no-op. + /// @param existingColors colours already keyed out of basePixmap + /// in a previous session, shown as swatches from the start + /// rather than forcing them to be re-picked from scratch. + /// @param existingTolerance the tolerance from that previous + /// session, if any. + explicit ImageTransparentColorDialog(const QPixmap &basePixmap, const QList<QColor> &existingColors = {}, + int existingTolerance = 10, QWidget *parent = nullptr); + + /// The resulting pixmap: basePixmap unchanged if no colour is + /// picked, colour-keyed against every picked colour otherwise. + QPixmap resultPixmap() const; + /// The final set of picked colours, for the caller to remember + /// across dialog sessions -- may differ from existingColors if + /// any were added or removed. + QList<QColor> pickedColors() const { return m_pickedColors; } + /// The final tolerance, for the same reason. + int tolerance() const { return m_tolerance; } + + /// Public so DiagramImageItem can re-derive its display pixmap + /// directly (base + crop + these colours) without needing to + /// re-open this dialog every time the crop region changes -- + /// binary transparency within tolerance, not a smooth falloff: + /// every pixel within `tolerance` (0-100, mapped onto the + /// maximum possible RGB distance) of *any* of keyColors becomes + /// fully transparent, everything else keeps its existing alpha + /// untouched. Squared distance throughout, avoiding a sqrt per + /// pixel; breaks out of the inner loop on the first matching + /// colour, since further matches wouldn't change the outcome. + static QImage applyColorKey(const QImage &source, const QList<QColor> &keyColors, int tolerance); + + private slots: + void onColorPicked(const QColor &color); + void onToleranceChanged(int value); + + private: + void removeColor(const QColor &color); + void rebuildSwatches(); + void updatePreview(); + static QPixmap onCheckerboard(const QImage &image); + + QImage m_sourceImage; + QList<QColor> m_pickedColors; + int m_tolerance = 10; + + ClickableImageLabel *m_sourceLabel; + QLabel *m_previewLabel; + QHBoxLayout *m_swatchesLayout; + QLabel *m_hintLabel; + QSlider *m_toleranceSlider; + QPushButton *m_okButton; +}; + +#endif // IMAGE_TRANSPARENT_COLOR_DIALOG_H diff --git a/sources/ui/shapegraphicsitempropertieswidget.cpp b/sources/ui/shapegraphicsitempropertieswidget.cpp index 5d4580321..2efed0bb8 100644 --- a/sources/ui/shapegraphicsitempropertieswidget.cpp +++ b/sources/ui/shapegraphicsitempropertieswidget.cpp @@ -73,7 +73,8 @@ void ShapeGraphicsItemPropertiesWidget::setItem(QetShapeItem *shape) } m_shape = shape; - ui->m_close_polygon->setVisible(m_shape->shapeType() == QetShapeItem::Polygon); + ui->m_close_polygon->setVisible(m_shape->shapeType() == QetShapeItem::Polygon + || m_shape->shapeType() == QetShapeItem::Path); ui->m_filling_gb->setHidden(m_shape->shapeType() == QetShapeItem::Line); updateUi(); @@ -164,6 +165,58 @@ QUndoCommand* ShapeGraphicsItemPropertiesWidget::associatedUndo() const { QPropertyUndoCommand *undo = nullptr; + //Geometry + const bool hasGeometry = (m_shape->shapeType() == QetShapeItem::Line + || m_shape->shapeType() == QetShapeItem::Rectangle + || m_shape->shapeType() == QetShapeItem::Ellipse); + if (hasGeometry) + { + if (m_shape->shapeType() == QetShapeItem::Line) + { + const QLineF old_line = m_shape->line(); + QLineF new_line = old_line; + new_line.setLength(ui->m_geom_dim1_dsb->value()); + + if (new_line != old_line) + { + undo = new QPropertyUndoCommand(m_shape, "line", old_line, new_line); + undo->setText(tr("Modifier la longueur d'une ligne")); + } + } + else + { + const QRectF old_rect = m_shape->rect().normalized(); + const bool isEllipse = (m_shape->shapeType() == QetShapeItem::Ellipse); + const qreal new_width = isEllipse ? ui->m_geom_dim1_dsb->value() * 2.0 : ui->m_geom_dim1_dsb->value(); + const qreal new_height = isEllipse ? ui->m_geom_dim2_dsb->value() * 2.0 : ui->m_geom_dim2_dsb->value(); + // Anchored on the shape's own current top-left, not + // re-centered -- matches how the resize handle itself + // behaves (the opposite corner stays put while the + // dragged one moves), so typing a width/height here + // and dragging a handle agree on what "resizing" means. + const QRectF new_rect(old_rect.topLeft(), QSizeF(new_width, new_height)); + + if (new_rect != old_rect) + { + undo = new QPropertyUndoCommand(m_shape, "rect", old_rect, new_rect); + undo->setText(tr("Modifier la taille d'une forme")); + } + } + + const qreal old_angle = m_shape->rotation(); + const qreal new_angle = ui->m_geom_angle_dsb->value(); + if (qAbs(old_angle - new_angle) > 0.05) + { + if (undo) + new QPropertyUndoCommand(m_shape, "rotation", old_angle, new_angle, undo); + else + { + undo = new QPropertyUndoCommand(m_shape, "rotation", old_angle, new_angle); + undo->setText(tr("Modifier l'angle d'une forme")); + } + } + } + QPen old_pen = m_shape->pen(); QPen new_pen = old_pen; @@ -366,6 +419,35 @@ void ShapeGraphicsItemPropertiesWidget::updateUi() if (m_shape) { + //Geometry + const bool hasGeometry = (m_shape->shapeType() == QetShapeItem::Line + || m_shape->shapeType() == QetShapeItem::Rectangle + || m_shape->shapeType() == QetShapeItem::Ellipse); + ui->m_geometry_gb->setVisible(hasGeometry); + if (hasGeometry) + { + ui->m_geom_angle_dsb->setValue(m_shape->rotation()); + + if (m_shape->shapeType() == QetShapeItem::Line) + { + ui->m_geom_dim1_label->setText(tr("Longueur")); + ui->m_geom_dim1_dsb->setValue(m_shape->line().length()); + ui->m_geom_dim2_label->setVisible(false); + ui->m_geom_dim2_dsb->setVisible(false); + } + else + { + const QRectF r = m_shape->rect().normalized(); + const bool isEllipse = (m_shape->shapeType() == QetShapeItem::Ellipse); + ui->m_geom_dim1_label->setText(isEllipse ? tr("Rayon X") : tr("Largeur")); + ui->m_geom_dim2_label->setText(isEllipse ? tr("Rayon Y") : tr("Hauteur")); + ui->m_geom_dim1_dsb->setValue(isEllipse ? r.width() / 2.0 : r.width()); + ui->m_geom_dim2_dsb->setValue(isEllipse ? r.height() / 2.0 : r.height()); + ui->m_geom_dim2_label->setVisible(true); + ui->m_geom_dim2_dsb->setVisible(true); + } + } + //Pen ui->m_style_cb->setCurrentIndex(static_cast<int>(m_shape->pen().style()) - 1); ui->m_size_dsb ->setValue(m_shape->pen().widthF()); @@ -373,7 +455,7 @@ void ShapeGraphicsItemPropertiesWidget::updateUi() ui->m_color_kpb->setColor(m_shape->pen().color()); //Brush - if (m_shape->shapeType() == QetShapeItem::Polygon) + if (m_shape->shapeType() == QetShapeItem::Polygon || m_shape->shapeType() == QetShapeItem::Path) ui->m_filling_gb->setVisible(m_shape->isClosed()); ui->m_brush_style_cb->setCurrentIndex(static_cast<int>(m_shape->brush().style())); @@ -384,6 +466,7 @@ void ShapeGraphicsItemPropertiesWidget::updateUi() } else if (m_shapes_list.size() >= 2) { + ui->m_geometry_gb->setVisible(false); ui->m_close_polygon->setHidden(true); bool same = true; //Pen @@ -477,6 +560,15 @@ void ShapeGraphicsItemPropertiesWidget::setUpEditConnection() if (m_shape || !m_shapes_list.isEmpty()) { + m_edit_connection << connect (ui->m_geom_dim1_dsb, QOverload<double>::of(&QDoubleSpinBox::valueChanged), + this, &ShapeGraphicsItemPropertiesWidget::apply); + + m_edit_connection << connect (ui->m_geom_dim2_dsb, QOverload<double>::of(&QDoubleSpinBox::valueChanged), + this, &ShapeGraphicsItemPropertiesWidget::apply); + + m_edit_connection << connect (ui->m_geom_angle_dsb, QOverload<double>::of(&QDoubleSpinBox::valueChanged), + this, &ShapeGraphicsItemPropertiesWidget::apply); + m_edit_connection << connect (ui->m_style_cb, QOverload<int>::of(&QComboBox::activated), this, &ShapeGraphicsItemPropertiesWidget::apply); @@ -495,14 +587,23 @@ void ShapeGraphicsItemPropertiesWidget::setUpEditConnection() m_edit_connection << connect (ui->m_close_polygon, &QCheckBox::clicked, this, &ShapeGraphicsItemPropertiesWidget::apply); - m_edit_connection << connect (m_shape, &QetShapeItem::penChanged, - this, &ShapeGraphicsItemPropertiesWidget::updateUi); + if (m_shape) + { + m_edit_connection << connect (m_shape, &QetShapeItem::penChanged, + this, &ShapeGraphicsItemPropertiesWidget::updateUi); - m_edit_connection << connect (m_shape, &QetShapeItem::closeChanged, - this, &ShapeGraphicsItemPropertiesWidget::updateUi); + m_edit_connection << connect (m_shape, &QetShapeItem::closeChanged, + this, &ShapeGraphicsItemPropertiesWidget::updateUi); - m_edit_connection << connect (m_shape, &QetShapeItem::brushChanged, - this, &ShapeGraphicsItemPropertiesWidget::updateUi); + m_edit_connection << connect (m_shape, &QetShapeItem::brushChanged, + this, &ShapeGraphicsItemPropertiesWidget::updateUi); + + m_edit_connection << connect (m_shape, &QetShapeItem::geometryChanged, + this, &ShapeGraphicsItemPropertiesWidget::updateUi); + + m_edit_connection << connect (m_shape, &QetShapeItem::transformChanged, + this, &ShapeGraphicsItemPropertiesWidget::updateUi); + } } } diff --git a/sources/ui/shapegraphicsitempropertieswidget.ui b/sources/ui/shapegraphicsitempropertieswidget.ui index 01e9ae4a3..8d46e874f 100644 --- a/sources/ui/shapegraphicsitempropertieswidget.ui +++ b/sources/ui/shapegraphicsitempropertieswidget.ui @@ -14,6 +14,78 @@ <string>Form</string> </property> <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QGroupBox" name="m_geometry_gb"> + <property name="title"> + <string>Géométrie</string> + </property> + <layout class="QGridLayout" name="gridLayout_3"> + <item row="0" column="0"> + <widget class="QLabel" name="m_geom_dim1_label"> + <property name="text"> + <string>Largeur</string> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QDoubleSpinBox" name="m_geom_dim1_dsb"> + <property name="decimals"> + <number>2</number> + </property> + <property name="minimum"> + <double>0.010000000000000</double> + </property> + <property name="maximum"> + <double>100000.000000000000000</double> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="m_geom_dim2_label"> + <property name="text"> + <string>Hauteur</string> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QDoubleSpinBox" name="m_geom_dim2_dsb"> + <property name="decimals"> + <number>2</number> + </property> + <property name="minimum"> + <double>0.010000000000000</double> + </property> + <property name="maximum"> + <double>100000.000000000000000</double> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="m_geom_angle_label"> + <property name="text"> + <string>Angle</string> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QDoubleSpinBox" name="m_geom_angle_dsb"> + <property name="decimals"> + <number>1</number> + </property> + <property name="minimum"> + <double>-360.000000000000000</double> + </property> + <property name="maximum"> + <double>360.000000000000000</double> + </property> + <property name="suffix"> + <string> °</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> <item> <widget class="QGroupBox" name="groupBox"> <property name="title"> @@ -230,7 +302,7 @@ <item> <widget class="QCheckBox" name="m_close_polygon"> <property name="text"> - <string>Polygone fermé</string> + <string>Forme fermée</string> </property> </widget> </item> @@ -257,6 +329,9 @@ </customwidget> </customwidgets> <tabstops> + <tabstop>m_geom_dim1_dsb</tabstop> + <tabstop>m_geom_dim2_dsb</tabstop> + <tabstop>m_geom_angle_dsb</tabstop> <tabstop>m_style_cb</tabstop> <tabstop>m_size_dsb</tabstop> <tabstop>m_color_kpb</tabstop> diff --git a/sources/undocommand/promoteshapecommand.cpp b/sources/undocommand/promoteshapecommand.cpp new file mode 100644 index 000000000..0983d3f64 --- /dev/null +++ b/sources/undocommand/promoteshapecommand.cpp @@ -0,0 +1,43 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#include "promoteshapecommand.h" +#include "../qetgraphicsitem/qetshapeitem.h" + +PromoteShapeCommand::PromoteShapeCommand( + QetShapeItem *shape, + const QDomElement &priorStateXml, + const QDomElement &newStateXml, + QUndoCommand *parent) : + QUndoCommand(QObject::tr("Transformer %1").arg(shape ? shape->name() : QString()), parent), + m_shape(shape) +{ + m_priorDoc.appendChild(m_priorDoc.importNode(priorStateXml, true)); + m_newDoc.appendChild(m_newDoc.importNode(newStateXml, true)); +} + +void PromoteShapeCommand::undo() +{ + if (m_shape) + m_shape->fromXml(m_priorDoc.documentElement()); +} + +void PromoteShapeCommand::redo() +{ + if (m_shape) + m_shape->fromXml(m_newDoc.documentElement()); +} diff --git a/sources/undocommand/promoteshapecommand.h b/sources/undocommand/promoteshapecommand.h new file mode 100644 index 000000000..1cca6eba6 --- /dev/null +++ b/sources/undocommand/promoteshapecommand.h @@ -0,0 +1,62 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. +*/ +#ifndef PROMOTESHAPECOMMAND_H +#define PROMOTESHAPECOMMAND_H + +#include <QUndoCommand> +#include <QPointer> +#include <QDomElement> + +class QetShapeItem; + +/** + @brief The PromoteShapeCommand class + Used whenever a shape's *identity* changes -- a Rectangle's corner is + dragged independently and it becomes a Polygon, an Arc is explicitly + converted to a free-form Path, etc. + + The saved .qet file never records what a shape used to be; that fact + only needs to survive as long as the rest of the edit history does, so + it lives entirely here, as a full XML snapshot on each side. Undo + restores the exact prior shape -- type, geometry and transform alike -- + by round-tripping through the same fromXml() every other load uses. + Once the file is saved and reopened, the promotion is permanent, same + as any other undo history. +*/ +class PromoteShapeCommand : public QUndoCommand +{ + public: + PromoteShapeCommand( + QetShapeItem *shape, + const QDomElement &priorStateXml, + const QDomElement &newStateXml, + QUndoCommand *parent = nullptr); + + void undo() override; + void redo() override; + + private: + QPointer<QetShapeItem> m_shape; + // Deep-cloned into private documents at construction time: a + // QDomElement is only a reference into whatever QDomDocument it + // came from, and that document (typically a short-lived one built + // just to call toXml()) is not guaranteed to outlive this command. + QDomDocument m_priorDoc, m_newDoc; +}; + +#endif // PROMOTESHAPECOMMAND_H From a494a8fd6c104e364f89036be20262664f657494 Mon Sep 17 00:00:00 2001 From: Kellermorph <thomas.heynk@web.de> Date: Sat, 5 Sep 2026 18:55:14 +0200 Subject: [PATCH 30/95] Add 'Text field' option for slave cross-reference positioning --- sources/editor/ui/dynamictextfieldeditor.cpp | 7 +- .../dynamicelementtextitem.cpp | 103 ++++++++++++++---- .../qetgraphicsitem/elementtextitemgroup.cpp | 60 +++++++++- sources/qetinformation.cpp | 6 +- sources/qetinformation.h | 1 + sources/ui/xrefpropertieswidget.cpp | 3 + 6 files changed, 152 insertions(+), 28 deletions(-) diff --git a/sources/editor/ui/dynamictextfieldeditor.cpp b/sources/editor/ui/dynamictextfieldeditor.cpp index b974ac430..7cd15dd62 100644 --- a/sources/editor/ui/dynamictextfieldeditor.cpp +++ b/sources/editor/ui/dynamictextfieldeditor.cpp @@ -245,7 +245,8 @@ void DynamicTextFieldEditor::fillInfoComboBox() else { strl = QETInformation::elementInfoKeys(); - bool is_plc_slave = (type == ElementData::Slave + bool is_slave = (type == ElementData::Slave); + bool is_plc_slave = (is_slave && ed.m_slave_type == ElementData::PLCSlave); if (is_plc_slave) { @@ -274,6 +275,10 @@ void DynamicTextFieldEditor::fillInfoComboBox() strl.removeAll(QETInformation::ELMT_PLC_T3); strl.removeAll(QETInformation::ELMT_PLC_T4); } + + if (is_slave) { + strl.prepend(QETInformation::ELMT_XREF); + } } for (int i=0; i<strl.size();++i) { diff --git a/sources/qetgraphicsitem/dynamicelementtextitem.cpp b/sources/qetgraphicsitem/dynamicelementtextitem.cpp index dad8f3775..21361473d 100644 --- a/sources/qetgraphicsitem/dynamicelementtextitem.cpp +++ b/sources/qetgraphicsitem/dynamicelementtextitem.cpp @@ -1359,36 +1359,68 @@ void DynamicElementTextItem::updateXref() !m_parent_element.data()->linkedElements().isEmpty()) { Element *master_elmt = m_parent_element.data()->linkedElements().first(); - if(master_elmt && !parentGroup() && - ( + if(master_elmt && !parentGroup()) + { + XRefProperties xrp = diagram()->project()->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); + + //Champ de texte: store xref in element informations + if(xrp.getXrefPos() == Qt::AlignHCenter) + { + if(m_text_from == DynamicElementTextItem::ElementInfo && m_info_name == "xref") + { + QString xref_label = xrp.slaveLabel(); + xref_label = autonum::AssignVariables::formulaToLabel(xref_label, master_elmt->rSequenceStruct(), master_elmt->diagram(), master_elmt); + + DiagramContext dc = m_parent_element->elementInformations(); + if(dc.value("xref").toString() != xref_label) + { + dc.addValue("xref", xref_label); + m_parent_element->setElementInformations(dc); + } + + //Set up connections for future updates + if(m_update_slave_Xref_connection.isEmpty()) + { + m_update_slave_Xref_connection << connect(master_elmt, &Element::xChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(master_elmt, &Element::yChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(master_elmt, &Element::elementInfoChange, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram(), &Diagram::diagramInformationChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::projectDiagramsOrderChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::diagramRemoved, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::XRefPropertiesChanged, this, &DynamicElementTextItem::updateXref); + } + return; + } + //For label/composite text: fall through to cleanup (delete m_slave_Xref_item) + } + else if( (m_text_from == DynamicElementTextItem::ElementInfo && m_info_name == "label") || (m_text_from == DynamicElementTextItem::CompositeText && m_composite_text.contains("%{label}")) ) - ) - { - XRefProperties xrp = diagram()->project()->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); - QString xref_label = xrp.slaveLabel(); - xref_label = autonum::AssignVariables::formulaToLabel(xref_label, master_elmt->rSequenceStruct(), master_elmt->diagram(), master_elmt); - - if(!m_slave_Xref_item) { - m_slave_Xref_item = new QGraphicsTextItem(xref_label, this); - m_slave_Xref_item->setFont(QETApp::diagramTextsFont(5)); - m_slave_Xref_item->setDefaultTextColor(Qt::black); - m_slave_Xref_item->installSceneEventFilter(this); + QString xref_label = xrp.slaveLabel(); + xref_label = autonum::AssignVariables::formulaToLabel(xref_label, master_elmt->rSequenceStruct(), master_elmt->diagram(), master_elmt); - m_update_slave_Xref_connection << connect(master_elmt, &Element::xChanged, this, &DynamicElementTextItem::updateXref); - m_update_slave_Xref_connection << connect(master_elmt, &Element::yChanged, this, &DynamicElementTextItem::updateXref); - m_update_slave_Xref_connection << connect(master_elmt, &Element::elementInfoChange, this, &DynamicElementTextItem::updateXref); - m_update_slave_Xref_connection << connect(diagram(), &Diagram::diagramInformationChanged, this, &DynamicElementTextItem::updateXref); - m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::projectDiagramsOrderChanged, this, &DynamicElementTextItem::updateXref); - m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::diagramRemoved, this, &DynamicElementTextItem::updateXref); - m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::XRefPropertiesChanged, this, &DynamicElementTextItem::updateXref); + if(!m_slave_Xref_item) + { + m_slave_Xref_item = new QGraphicsTextItem(xref_label, this); + m_slave_Xref_item->setFont(QETApp::diagramTextsFont(5)); + m_slave_Xref_item->setDefaultTextColor(Qt::black); + m_slave_Xref_item->installSceneEventFilter(this); + + m_update_slave_Xref_connection << connect(master_elmt, &Element::xChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(master_elmt, &Element::yChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(master_elmt, &Element::elementInfoChange, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram(), &Diagram::diagramInformationChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::projectDiagramsOrderChanged, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::diagramRemoved, this, &DynamicElementTextItem::updateXref); + m_update_slave_Xref_connection << connect(diagram()->project(), &QETProject::XRefPropertiesChanged, this, &DynamicElementTextItem::updateXref); + } + else + m_slave_Xref_item->setPlainText(xref_label); + setXref_item(xrp.getXrefPos(), xrp.slaveOffset()); + return; } - else - m_slave_Xref_item->setPlainText(xref_label); - setXref_item(xrp.getXrefPos(), xrp.slaveOffset()); - return; } } } @@ -1405,6 +1437,29 @@ void DynamicElementTextItem::updateXref() delete m_slave_Xref_item; m_slave_Xref_item = nullptr; m_update_slave_Xref_connection.clear(); + + //If position changed to Champ de texte, store xref in element info + if(m_parent_element->linkType() == Element::Slave && + !m_parent_element->linkedElements().isEmpty()) + { + Element *master_elmt = m_parent_element->linkedElements().first(); + if(master_elmt && diagram()) + { + XRefProperties xrp = diagram()->project()->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); + if(xrp.getXrefPos() == Qt::AlignHCenter) + { + QString xref_label = xrp.slaveLabel(); + xref_label = autonum::AssignVariables::formulaToLabel(xref_label, master_elmt->rSequenceStruct(), master_elmt->diagram(), master_elmt); + + DiagramContext dc = m_parent_element->elementInformations(); + if(dc.value("xref").toString() != xref_label) + { + dc.addValue("xref", xref_label); + m_parent_element->setElementInformations(dc); + } + } + } + } } } diff --git a/sources/qetgraphicsitem/elementtextitemgroup.cpp b/sources/qetgraphicsitem/elementtextitemgroup.cpp index 983b5605b..b04c91eda 100644 --- a/sources/qetgraphicsitem/elementtextitemgroup.cpp +++ b/sources/qetgraphicsitem/elementtextitemgroup.cpp @@ -795,12 +795,46 @@ void ElementTextItemGroup::updateXref() !m_parent_element->linkedElements().isEmpty()) { Element *master_elmt = m_parent_element->linkedElements().first(); + XRefProperties xrp = project->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); + + //Champ de texte: store xref in element informations + if(xrp.getXrefPos() == Qt::AlignHCenter) + { + for(DynamicElementTextItem *deti : texts()) + { + if(deti->textFrom() == DynamicElementTextItem::ElementInfo && deti->infoName() == "xref") + { + QString xref_label = xrp.slaveLabel(); + xref_label = autonum::AssignVariables::formulaToLabel(xref_label, master_elmt->rSequenceStruct(), master_elmt->diagram(), master_elmt); + + DiagramContext dc = m_parent_element->elementInformations(); + if(dc.value("xref").toString() != xref_label) + { + dc.addValue("xref", xref_label); + m_parent_element->setElementInformations(dc); + } + + //Set up connections for future updates + if(m_update_slave_Xref_connection.isEmpty()) + { + m_update_slave_Xref_connection << connect(master_elmt, &Element::xChanged, this, &ElementTextItemGroup::updateXref); + m_update_slave_Xref_connection << connect(master_elmt, &Element::yChanged, this, &ElementTextItemGroup::updateXref); + m_update_slave_Xref_connection << connect(master_elmt, &Element::elementInfoChange, this, &ElementTextItemGroup::updateXref); + m_update_slave_Xref_connection << connect(project, &QETProject::projectDiagramsOrderChanged, this, &ElementTextItemGroup::updateXref); + m_update_slave_Xref_connection << connect(project, &QETProject::diagramRemoved, this, &ElementTextItemGroup::updateXref); + m_update_slave_Xref_connection << connect(project, &QETProject::XRefPropertiesChanged, this, &ElementTextItemGroup::updateXref); + } + return; + } + } + //No "xref" text found: fall through to cleanup + } + for(DynamicElementTextItem *deti : texts()) { if((deti->textFrom() == DynamicElementTextItem::ElementInfo && deti->infoName() == "label") || (deti->textFrom() == DynamicElementTextItem::CompositeText && deti->compositeText().contains("%{label"))) { - XRefProperties xrp = project->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); QString xref_label = xrp.slaveLabel(); xref_label = autonum::AssignVariables::formulaToLabel(xref_label, master_elmt->rSequenceStruct(), master_elmt->diagram(), master_elmt); @@ -839,6 +873,30 @@ void ElementTextItemGroup::updateXref() delete m_slave_Xref_item; m_slave_Xref_item = nullptr; m_update_slave_Xref_connection.clear(); + + //If position changed to Champ de texte, store xref in element info + if(m_parent_element->linkType() == Element::Slave && + !m_parent_element->linkedElements().isEmpty() && + m_parent_element->diagram()) + { + Element *master_elmt = m_parent_element->linkedElements().first(); + if(master_elmt) + { + XRefProperties xrp = m_parent_element->diagram()->project()->defaultXRefProperties(master_elmt->kindInformations()["type"].toString()); + if(xrp.getXrefPos() == Qt::AlignHCenter) + { + QString xref_label = xrp.slaveLabel(); + xref_label = autonum::AssignVariables::formulaToLabel(xref_label, master_elmt->rSequenceStruct(), master_elmt->diagram(), master_elmt); + + DiagramContext dc = m_parent_element->elementInformations(); + if(dc.value("xref").toString() != xref_label) + { + dc.addValue("xref", xref_label); + m_parent_element->setElementInformations(dc); + } + } + } + } } } diff --git a/sources/qetinformation.cpp b/sources/qetinformation.cpp index de28925ef..05a246d47 100644 --- a/sources/qetinformation.cpp +++ b/sources/qetinformation.cpp @@ -194,8 +194,9 @@ QStringList QETInformation::elementInfoKeys() ELMT_PLC_ADDRESS, ELMT_PLC_FUNCTION, ELMT_PLC_COMMENT, - ELMT_PLC_CROSSREF, - "exclude_from_bom" }; + ELMT_PLC_CROSSREF, + ELMT_XREF, + "exclude_from_bom" }; return list; } @@ -316,6 +317,7 @@ QString QETInformation::translatedInfoKey(const QString &info) else if (info == ELMT_PLC_FUNCTION) return QObject::tr("Fonction PLC"); else if (info == ELMT_PLC_COMMENT) return QObject::tr("Commentaire PLC"); else if (info == ELMT_PLC_CROSSREF) return QObject::tr("Réf. croisée PLC"); + else if (info == ELMT_XREF) return QObject::tr("Réf. croisée"); else return QString(); } diff --git a/sources/qetinformation.h b/sources/qetinformation.h index 2aab78e95..9fee0cdf3 100644 --- a/sources/qetinformation.h +++ b/sources/qetinformation.h @@ -83,6 +83,7 @@ namespace QETInformation static QString ELMT_SUPPLIER_AUX4 = "supplier_auxiliary4"; static QString ELMT_QUANTITY_AUX4 = "quantity_auxiliary4"; static QString ELMT_UNITY_AUX4 = "unity_auxiliary4"; + static QString ELMT_XREF = "xref"; /** Default information related to conductor **/ diff --git a/sources/ui/xrefpropertieswidget.cpp b/sources/ui/xrefpropertieswidget.cpp index 02dedc746..97f4dadf8 100644 --- a/sources/ui/xrefpropertieswidget.cpp +++ b/sources/ui/xrefpropertieswidget.cpp @@ -111,6 +111,7 @@ void XRefPropertiesWidget::buildUi() ui -> m_xrefpos_cb -> addItem(tr("Left"),"left"); ui -> m_xrefpos_cb -> addItem(tr("Right"),"right"); ui -> m_xrefpos_cb -> addItem(tr("Text alignment"),"alignment"); + ui -> m_xrefpos_cb -> addItem(tr("Champ de texte"),"text_field"); m_previous_type_index = ui -> m_type_cb -> currentIndex(); } @@ -139,6 +140,7 @@ void XRefPropertiesWidget::saveProperties(int index) { else if(ui->m_xrefpos_cb->itemData(ui->m_xrefpos_cb->currentIndex()).toString() == "left") xrp.setXrefPos(Qt::AlignLeft); else if(ui->m_xrefpos_cb->itemData(ui->m_xrefpos_cb->currentIndex()).toString() == "right") xrp.setXrefPos(Qt::AlignRight); else if(ui->m_xrefpos_cb->itemData(ui->m_xrefpos_cb->currentIndex()).toString() == "alignment") xrp.setXrefPos(Qt::AlignBaseline); + else if(ui->m_xrefpos_cb->itemData(ui->m_xrefpos_cb->currentIndex()).toString() == "text_field") xrp.setXrefPos(Qt::AlignHCenter); xrp.setShowPowerContac(ui->m_show_power_cb->isChecked()); xrp.setShowTerminalName(ui->m_show_terminal_name_cb->isChecked()); xrp.setPrefix("power", ui->m_power_prefix_le->text()); @@ -195,6 +197,7 @@ void XRefPropertiesWidget::updateDisplay() else if(xrp.getXrefPos() == Qt::AlignRight) ui->m_xrefpos_cb->setCurrentIndex(ui->m_xrefpos_cb->findData("right")); else if(xrp.getXrefPos() == Qt::AlignBaseline) ui->m_xrefpos_cb->setCurrentIndex(ui->m_xrefpos_cb->findData("alignment")); else if(xrp.getXrefPos() == Qt::AlignBottom) ui->m_xrefpos_cb->setCurrentIndex(ui->m_xrefpos_cb->findData("bottom")); + else if(xrp.getXrefPos() == Qt::AlignHCenter) ui->m_xrefpos_cb->setCurrentIndex(ui->m_xrefpos_cb->findData("text_field")); ui->m_show_power_cb->setChecked(xrp.showPowerContact()); ui->m_show_terminal_name_cb->setChecked(xrp.showTerminalName()); ui->m_power_prefix_le-> setText(xrp.prefix("power")); From e0ef24fe6835e9757ec6dedd71bfd4b4f36148f6 Mon Sep 17 00:00:00 2001 From: Laurent Trinques <scorpio@qelectrotech.org> Date: Sat, 5 Sep 2026 20:43:54 +0200 Subject: [PATCH 31/95] Update translations files --- lang/qet_ar.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_ca.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_cs.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_da.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_de.ts | 1762 ++++++++++++++++++++++++++++++-------------- lang/qet_el.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_en.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_es.ts | 1791 ++++++++++++++++++++++++++++++-------------- lang/qet_fr.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_hr.ts | 1783 ++++++++++++++++++++++++++++++-------------- lang/qet_hu.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_it.ts | 1795 +++++++++++++++++++++++++++++++-------------- lang/qet_ja.ts | 1787 ++++++++++++++++++++++++++++++-------------- lang/qet_ko.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_mn.ts | 1791 ++++++++++++++++++++++++++++++-------------- lang/qet_nb.ts | 1787 ++++++++++++++++++++++++++++++-------------- lang/qet_nl_BE.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_nl_NL.ts | 1779 ++++++++++++++++++++++++++++++-------------- lang/qet_pl.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_pt.ts | 1783 ++++++++++++++++++++++++++++++-------------- lang/qet_pt_BR.ts | 1795 +++++++++++++++++++++++++++++++-------------- lang/qet_ro.ts | 1787 ++++++++++++++++++++++++++++++-------------- lang/qet_rs.ts | 1779 ++++++++++++++++++++++++++++++-------------- lang/qet_ru.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_sk.ts | 1779 ++++++++++++++++++++++++++++++-------------- lang/qet_sl.ts | 1779 ++++++++++++++++++++++++++++++-------------- lang/qet_sr.ts | 1779 ++++++++++++++++++++++++++++++-------------- lang/qet_sv.ts | 1787 ++++++++++++++++++++++++++++++-------------- lang/qet_tr.ts | 1789 ++++++++++++++++++++++++++++++-------------- lang/qet_uk.ts | 1787 ++++++++++++++++++++++++++++++-------------- lang/qet_zh.ts | 1791 ++++++++++++++++++++++++++++++-------------- 31 files changed, 37872 insertions(+), 17506 deletions(-) diff --git a/lang/qet_ar.ts b/lang/qet_ar.ts index 03956a74a..6263aa6a6 100644 --- a/lang/qet_ar.ts +++ b/lang/qet_ar.ts @@ -586,7 +586,7 @@ <translation>شكل</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>حالة المشروع:</translation> </message> @@ -621,54 +621,54 @@ <translation>إلى</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>تحديث الخط</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>موصل</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>الجديد فقط</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>سويّا</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>تعطيل</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>عنصر</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>القائم فقط</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>صفحة</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>القائم</translation> </message> @@ -846,6 +846,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>مقاسات الصفحة</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1415,13 +1423,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>إضافة %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>صورة</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">تحديد صورة ...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">خطأ</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">إستحالة تحميل الصورة .</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1472,39 +1684,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>بدون عنوان</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">خطأ</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2044,7 +2256,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2667,90 +2879,95 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>عام</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>إسم : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>صفحة %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">طراز : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>موضع : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>دوران : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>مقاس : %1*%2</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>طرف توصيل : : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>موضع : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">تجميد الوضعية</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>إيجاد في اللوحة</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>تحرير العنصر</translation> </message> @@ -4550,7 +4767,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>هذا نموذج لإطار تعريف , والممكن تطبيقه للصفحة .</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [غير مستعمل قي المخطط]</translation> </message> @@ -4780,6 +4997,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">عمودي</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4789,23 +5029,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">عرض</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>تجميد الوضعية</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>مقاسات الصورة</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>تغيير حجم الصورة</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6573,118 +6911,118 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>لقد . تمّ تعديل المشروع هل تريد حفظ التغييرات ؟</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>مشروع QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>حذف الصفحة ؟</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>مشروع للقراءة فقط</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>هذا المشروع للقراءة فقط. ولا يُمكن بالتالي مسحه .</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>حذف نماذج اطارات التعريفالغير مستعملة في المشروع</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>احذف العناصر غير المستعملة في المشروع</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>حذف الأصناف الفارغة</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>تنقية المشروع</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>إضافة صفحة</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>هذا المشروع لا يحتوي على أيّة صفحة </translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>حفظ باسم</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>لا وجود لمشروع معروض</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>جاري فتح المشروع ...</b><br/>إمشاء علامات التبويب :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>مشروع</translation> @@ -6773,173 +7111,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>إعدادات برنامج QElectrotech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>تحميل ...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>تحميل ...ايقونة systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&إنهاء</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&حجب</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>ا&سترجاع</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&حجب كلّ محرري المخططات</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&استرجاع كل محرري المخطط</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&احجب كلّ محرري العنصر</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&استرجع كلّ محرري العنصر</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&احجب كلّ محرري إطار التعريف</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&استرجع كلّ محرري إطار التعريف</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&محرر تخطييط جديد</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&محرّر عنصر جديد</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>إغلاق تطبيق QElectrotech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>خفض QElectrotech في systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>إسترجاع QElectrotech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>محرري المخططات</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>محرري العناصر</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>محرري إطار التعريف</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>الملف التالي مُستعاد,<br>هل تريد فتحه ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>تمّ استعادة الملفات التالية,<br>هل تريد فتحها ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>استعادة الملف</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>إستعمال :</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation>[خيارات] [ rملف]...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6955,32 +7293,32 @@ Options disponibles : - الترخيص ......................... عرض الترخيص</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR عرّف مجلد صنف العناصر </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR عرّف مجلد مجموعة نماذج إطارات التعريف</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR عرّف مجلد الإعدادات</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR عرّف المجلد المحتوي على ملفات اللغة</translation> @@ -6989,431 +7327,442 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectrotech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>إلغاءات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>لا تغيير</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>انقر على فعل للرجوع إلى الخلف في تحرير مخططتكم</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&جديد</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&فتح</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&غلق</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&حفظ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>حفظ باسم</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&تصدير</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>مشاريع</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>مجموعات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>هذه اللافتة تُعدّد مُختلف الاجراءات المتّخذة على الصفحة الحالية . الظغط على إجراء يسمح بالرجوع إلى حالة المُخطط مُباشرة قبل تنفيذه .</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>طباعة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>إ&نهاء</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>إلغاء</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>إعادة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&قص</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&نسخ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&لصق</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>عرض الشبكة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>عرض أو إخفاء شبكة الصفخات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>خصائص الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>إضافة صفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>حذف الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>إحداث مشروع جديد</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>فتح مشروع قائم</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>غلق المشروع الحالي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>حفظ المشروع الحالي بكلّ صفحاته</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>حفظ المشروع الحالي باسم ملف آخر</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>اضافة سطر</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>إزالة صف</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>إضافة عمود للصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>نزع عمود من الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>تكبير ارتفاع الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>تقليص ارتفاع الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>نزع العناصر المُحدّدة في الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>تحديد الكل</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>إلغاء تحديد الكل</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>اعكس التحديد</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>العمق</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7426,7 +7775,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7439,591 +7788,586 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>مجموعة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>حذف</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>دوران محوري</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>توجيه النصوص</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>إيجاد في اللوحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>إعادة تهيئة الموصلات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>إضافة حقل نصي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>إضافة عمود</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>إضافة صورة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>إزالة عمود</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>خصائص المشروع</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>تنظيف المشروع</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>إضافة مُلخص</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>تكبير</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>تصغير</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>تكبير المحتوى</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>تهيئة تكبير/تصغير</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>بدون تكبير/تصغير</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>باستعمال الزوايا الطرفية</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>باستعمال النوافذ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>أسلوب التحديد</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>أسلوب العرض</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&فسيفساء</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&تتالي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>المشروع التالي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>المشروع السابق</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>تحديد كلّ عناصر الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>إلغاء تحديد كلّ عناصر الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>تكبير الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>تقليص الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>مُوائمة التكبير لعرض كلّ مُحتوى الصفحة بغضّ النظر عن الاطار</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>موائمة التكبير بالظبط على إطار الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>اضافة مستطيل</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>اضافة اهليج</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>إضافة مُتعدد أضلع</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>إيجاد العنصر المُحدّد في اللوحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>تصدير الصفحة الحالية في شكل آخر</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>طباعة صفحة أو صفحات من المشروع الحالي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>وضع العناصر المخزنة بالحافظة على الصفحة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>تحرير خاصيات الصفحة (مقاسات, معلومات إطار التعريف, خاصيات المُوصلات ...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>يسمح بعرض الصفحة دون القدرة على تغييرها</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>مشروع %1 محفوظ في الدليل: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>إستحالة فتح الملف</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>يبدو أنّ الملف %1 الذي تُحاول فتحه غير موجود .</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>فتح المشروع للقراءة فقط</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>تحرير العنصر المُحدّد</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>غلق تطبيق QElectrotech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>إلغاء الفعل السابق</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>استرجاع الفعل الملغى</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>نقل العناصر المحددة داخل الحافظة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>نسخ التحديد ووضعه في الحافظة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>الغاء تحديد العناصر المحددة و تحديد العناصر الغير محددة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>تدوير العناصر والنصوص المُحدّدة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>تدوير النصوص المُحدّدة بزاوية مُعيّنة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>إعادة حساب مسارات الأسلاك الموصلة دون الأخذ في الإعتبار التغييرات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>إحداث آلي لموصلات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>استخدم الاحداث الآلي للموصلات كلّما كان ذلك مُمكنا</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>لون الخلفية أبيض / رمادي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>عرض لون الخلفية للصفحة أبيض أو رمادي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>استرجاع تكبير / تصغير الإفتراضي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>اضافة سطر</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>يُقدّم مختلف المشاريع المفتوحة في النوافذ الثانوية</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>تقديم مختلف المشاريع المفتوحة في علامات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>يسمح بتحديد العناصر</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>يُنظم النوافذ على هيئة فسيفساء</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>يُنظم النوافذ على التتالي </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>تفعيل المشروع التالي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>تفعيل المشروع السابق</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&ملف</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&تحرير</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&مشروع</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>عر&ض</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>نوا&فذ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&مفتوح حديثا</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>عرض أو لا لشريط الأدوات الرئيسي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>عرض أو لا لشريط أدوات العرض</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>عرض أو لا شريط أدوات المخطط</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>عرض أو لا للوحة الأجهزة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>عرض أو لا لقائمة التحويرات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>عرض المشاريع</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>مشاريع QElectroTech (*.qet);ملفات XML (*.xml);;كلّ الملفات (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>تنشيط المشروع « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>أدوات</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>عرض</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>مخطط</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>إضافة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>فتح ملف</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>يبدو أنّ الملف التي تُحاول فتحه لا يُمكن الوصول إليه للقراءة وبالتالي يستحيل فتحه. الرجاء التثبت من تراخيص الملف.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>يبدو أنّ المشروع التي تحاول فتحه, غير قابل للوصول إليه للكتابة. وبالتالي لايُمكن فتحه إلا للقراءة فقط.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>فشل فتح المشروع</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>يبدو أنّ الملف %1 ليس بملف مشروع QElectrotech. ;وبالتالي لا يمكن فتحه.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>تحرير العنصر</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>تحرير الحقل النصّي</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>تحرير الصورة</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>تحرير الموصل</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>تحرير الكائن المُحدّد</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>خطأ</translation> @@ -8282,42 +8626,42 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>تحرير المعلومات عن المُؤلف</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>اضافة سطر</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>اضافة مستطيل</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>اضافة اهليج</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>اضافة متعدد الأضلع</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>اضافة نص</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>اضافة قوس دائري</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>اضافة طرف توصيل</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>الغاء</translation> </message> @@ -8328,12 +8672,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished">اعرض</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8346,44 +8690,44 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>إعادة</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">تنبيه</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>أجزاء</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>العمق</translation> @@ -8419,31 +8763,31 @@ veuillez patienter durant l'import...</source> <translation>لصق من ...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[مُعدّل]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [للقراءة فقط]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>لا تغيير</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>محرر العناصر</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n جزء محدّد.</numerusform> @@ -8455,40 +8799,40 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>غياب طرف توصيل</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>غياب طرف توصيل</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>في غياب نُقطة توصيل , لا يُمكن ربط العنصر بعناصر أخرى عبر موصلات .</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>إضافة حقل نصّي ديناميكي</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>خطأ</b> :<br>لا تحمل إحالات الصفحة سوى نقطة توصيل واحدة.<br><b>حلّ</b> :<br>تأكد من أنّ العنصر لا يحمل سوى نقطة توصيل واحدة</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>التحقّق من هذا العنصر ولّد</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8501,259 +8845,259 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> و</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>أخطاء</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>تنبيهات</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>الملف %1 غير موجود.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>إستحالة فتح الملف %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>هذا الملف وثيقة XML غير سليمة</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>خطأ</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>تحرير بقراءة فقط</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>ليس لديك الصلاحيات الضرورية لتعديل هذا العنصر . وبالتالي سيُفتح للقراءة فقط.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>خطأ</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>لايمكن الكتابة في هذا الملف</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>لا يمكن حفظ العنصر</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>إستحالة فتح الملف</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>يبدو أنّ الملف %1 الذي تُحاول فتحه غير موجود .</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>إعادة تحميل العنصر</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>لقد قُمت بتعديلات على هذا العنصر. إذا قمت بإعادة تحميله فإنك ستفقد هذه التعديلات . هل ترغب فعلا في إعادة تحميل العنصر ؟ </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">عتاصر QElectrotech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>فشل الحفظ</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>فشل الحفظ. الشروط الطلوبة غير صالحة</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>حفظ باسم</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>عتاصر QElectrotech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>حفظ العنصر الحالي ؟ </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>هل تريد حفظ العنصر %1 ؟</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>فتح ملف</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>عناصر QElectrotech (*.elmt); ملفات XML(*.xml)::كل الملفات (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>لا وجود للعنصر.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>العنصر غير موجود.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>المسار الإفتراضي المختار لا يُطابق عنصر.</translation> @@ -8901,42 +9245,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>مشروع « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>مشروع %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>مشروع بدون عنوان</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [قراءة فقط]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [مُتغيّر]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8944,56 +9288,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>حدث خطأ أثناء الإدماج.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>تنبيه</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>جاري فتح المشروع ...</b><br/>إنشاء الصفحات</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>جاري فتح المشروع ...</b><br/>وضع المرجعيات المتقاطعة</p></translation> </message> @@ -9031,139 +9375,138 @@ Que désirez vous faire ?</source> <translation>لتكرار هذا النموذج, ادخل الاسم لمطلوب لنسخته</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&جديد</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&فتح</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>فتح من ملف</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&حفظ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>حفظ باسم</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>حفظ إلى ملف</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&انهاء</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>إدارة الشعارات</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>تكبير</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>تصغير</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>تهيئة تكبير / تصغير</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>بدون تكبير</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>حفظ باسم</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>نماذج اطارات تعريف QElectrotech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&ادماج الخلايا</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&قص</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&نسخ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&لصق</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>تحرير المعلومات الإضافية</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>إضافة &صفّ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>إضافة &عمود</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&فصل الخلايا</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9182,144 +9525,145 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&عرض</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&تحرير</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>عر&ض</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>أدوات</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>تحرير</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>عرض</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>لا تغيير</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>الغاءات</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>خصائص الخليّة</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[مُعدّل]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[للقراءة فقط]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectrotech -محرر نموذج اطار التعريف</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">خطأ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>فتح نموذج</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>فتح ملف</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>نماذج اطارات تعريف QElectrotech (*%1);;ملفات XML (*.xml);;كلّ الملفات (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>حفظ النموذج باسم</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>تحرير المعلومات الإضافية</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>يُمكنكم إستعمال هذا الحقل الحر لذكر مؤلفي إطار التعريف , ترخيصه, أو أيّ معلومة أخرى ترونها مفيدة.</translation> </message> @@ -9935,18 +10279,18 @@ Que désirez vous faire ?</source> <translation>خصائص المشروع</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>تحديد صورة ...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>ملفات صور (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9955,7 +10299,7 @@ Que désirez vous faire ?</source> <translation>خطأ</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>إستحالة تحميل الصورة .</translation> </message> @@ -10376,24 +10720,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">نوع</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">تعليق</translation> @@ -10401,16 +10745,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10682,22 +11026,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished">حدث خطأ أثناء تشغيل المكون الإضافي qet_tb_generator</translation> </message> @@ -10904,13 +11248,13 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -11140,6 +11484,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11184,55 +11533,306 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>شكل</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>سطر</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>إضافة نقطة</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>حذف هذه النقطة</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">حجم</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>إضافة نقطة لمتعدد الأضلع</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>حذف نقطة من متغددالأضلع</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>تعديل %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>مستطيل</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>اهليج</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>مُتعدد أضلع</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12112,150 +12712,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>شكل</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>خط</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>سُمك</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>عادي</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>خط وصل</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>متقطع</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>خطوط و نقاط</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>خطوط نقاط نقاط</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>شرطة مُخصّصة</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>نوع</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>لون</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>تعبئة</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>نمط</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>لا شيئ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">عرض</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>مُعبّأ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>كثافة 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>كثافة 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>كثافة 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>كثافة 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>كثافة 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>كثافة 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>كثافة 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>أفقي</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>عمودي</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>قاطع و مقطوع</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>قطري خلف</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>قطري أمام</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>قطري صليب</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>تجميد الوضعية</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>متعدد أضلع مُغلق</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12264,30 +12891,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>تعديل سطر الشكل</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>تعديل تعبئة الشكل</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>غلق متعدد الأضلع</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_ca.ts b/lang/qet_ca.ts index 4675e6e1c..e4f50eac6 100644 --- a/lang/qet_ca.ts +++ b/lang/qet_ca.ts @@ -586,7 +586,7 @@ <translation>Formulari</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Estat del projecte :</translation> </message> @@ -621,54 +621,54 @@ <translation>A</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Política d'actualització</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Conductor</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Només nou</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Tots dos</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Desactiva</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Element</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Només existent</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Full</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Existent</translation> </message> @@ -847,6 +847,14 @@ Nota: Aquestes opcions NO permeten ni bloquegen les numeracions automàtiques, n <translation>Dimensions del full</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Nota: Aquestes opcions NO permeten ni bloquegen les numeracions automàtiques, n <translation>Afegeix %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>una imatge</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Selecciona una imatge ...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Error</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">No es pot carregar la imatge.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1471,39 +1683,39 @@ Nota: Aquestes opcions NO permeten ni bloquegen les numeracions automàtiques, n <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Connecteu els borns seleccionats</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Sense títol</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Error</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2043,7 +2255,7 @@ Nota: Aquestes opcions NO permeten ni bloquegen les numeracions automàtiques, n <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2653,99 +2865,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>General</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Element </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Nom : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Full : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Tipus: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Subtipus: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Posició : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotació : %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Mida: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Borns : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Ubicació: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Bloqueja la posició</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Cerca al panel</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Modifica l'element</translation> </message> @@ -4553,7 +4770,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Això és un model de caixetí de QElectroTech, que es pot aplicar a un full.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [no usat al projecte]</translation> </message> @@ -4784,6 +5001,29 @@ Falten %1 línies per mostrar tota la informació</translation> <translation type="unfinished">Vertical</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4793,23 +5033,121 @@ Falten %1 línies per mostrar tota la informació</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Amplada</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Alçada</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Bloqueja la posició</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Mida de la imatge</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Modifica la mida d'una imatge</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6581,118 +6919,118 @@ Les variables següents són incompatibles: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>El projecte ha estat modificat. Vol desar els canvis?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>sense nom</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Projecte QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Suprimeix el full?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Projecte només de lectura</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Aquest projecte és només de lectura. Per tant no pot ésser netejat.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Elimina els models de caixetins que no es facin servir al projecte</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Suprimeix els elements que no es facin servir al projecte</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Suprimeix les categories buides</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Neteja el projecte</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Afegeix un full</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Torna a l'inici del projecte</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Vés al final del projecte</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>El projecte no conté cap full</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Desa com a</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>cap projecte en pantalla</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Obrint el projecte actual...</b><br/>Creant pestanyes de fulls:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projecte</translation> @@ -6781,166 +7119,166 @@ Vol desar els canvis?</translation> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Configura QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Carregant...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Carregant... icona de la safata del sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Sortir</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Amagar</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Restaurar</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>Amaga tots els editors d'&esquemes</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>Restaura tots els editors d'&esquemes</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Amaga tots els editors d'elements</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Restaura tots els editors d'elements</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>Amaga tots els editors de &caixetins</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>Restaura tots els editors de &caixetins</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Nou editor d'esquemes</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Nou editor d'elements</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Tanca el programa QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimitza QEletectroTech a la safata del sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Restaura QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Editors d'esquemes</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Editors d'elements</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Editors de caixetins</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>S'ha trobat el següent fitxer de restauració.<br>Voleu obrir-lo?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>S'han trobat els fitxers de restauració següents.<br>Voleu obrir-los?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Fitxer de recuperació</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Ús : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6949,7 +7287,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6966,35 +7304,35 @@ Opcions disponibles: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Definir la carpeta de la col·lecció d'elements </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Definir la carpeta de la col·lecció de caixetins </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Definir la carpeta de configuració </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR Defineix la carpeta de dades </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Definir la carpeta amb els fitxers de llengua @@ -7004,672 +7342,683 @@ Opcions disponibles: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Desfés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Cap canvi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Trieu una acció per retrocedir en l'edició de l'esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nou</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Obre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Tanca</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Desa</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Desa com a</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&xporta</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Aquest panell mostra les diferents accions realitzades en el full actual. Faci clic en una acció per tornar a l'estat del full just després de l'acció.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Imprimeix</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Exporta com a pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Exporta un o més fulls del projecte actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Surt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Desfés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Refés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Re&talla</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Cop&ia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>En&ganxa</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Color de fons blanc / gris</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Mostra el color de fons del full en blanc o gris</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Mostra la quadrícula</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Mostra o oculta la quadrícula</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Propietats del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Afegeix un full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Suprimeix un full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Exporta en format CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Afegeix una nomenclatura</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Gestor de blocs de borns (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Inicieu el connector de creació de blocs de borns</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Exporta la llista de noms de conductors</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Exporta la base de dades interna del projecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Crea un nou projecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Obre un projecte existent</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Tanca el projecte actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Desa el projecte actual i tots els seus fulls</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Desa el projecte actual amb un altre nom de fitxer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Afegeix una línia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Suprimeix una línia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Afegeix una columna al full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Suprimeix una columna al full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Augmenta l'altura del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Disminueix l'altura del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Agrupa els textos seleccionats</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Suprimeix els elements seleccionats del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Selecciona-ho tot</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Desselecciona-ho tot</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Inverteix la selecció</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Afegeix un pla de borns</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Afegeix un camp de text al full actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Afegeix una imatge al full actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Afegeix una fila al full actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Afegeix un rectangle al full actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Afegeix una el·lipse al full actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Afegeix un polígon al full actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Afegeix un pla de borns al full actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Cerca i reemplaça</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Profunditat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Suprimeix</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Gira</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Orienta els textos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Cerca al panell</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Reinicia els conductors</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Afegeix un camp de text</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Afegeix una columna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Afegeix una imatge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Suprimeix una columna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Propietats del projecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Neteja el projecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Afegeix un resum</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Apropa</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Allunya</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Amplia el contingut</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Zoom adaptat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Sense zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>En pestanyes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>En finestres</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Mode Selecció</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Mode Visualització</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mosaic</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Cascada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Projecte següent</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Projecte anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Selecciona tots els elements del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Deselecciona tots els elements del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Augmenta la mida del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Disminueix la mida del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Ajusta el zoom per mostrar tot el contingut del full independentment del marc</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Ajusta el zoom exactament al marc del full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Afegeix un rectangle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Afegeix una el·lipse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Afegeix un polígon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Troba l'element seleccionat en el panell</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Exporta el full actual a un altre format</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Imprimeix un o més fulls del projecte actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Enganxa els elements del porta-retalls al full</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Edita les propietats del full (dimensions, informació del caixetí, propietats dels conductors, etc.)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Permet veure el full sense poder modificar-lo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Projecte %1 desat al directori: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Projectes QElectroTech (* .qet);; Arxius XML (* .xml);; Tots els fitxers (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Impossible obrir el fitxer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Sembla que el fitxer %1 que estàs intentant obrir no existeix.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Obertura del projecte en mode de només lectura</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7678,7 +8027,7 @@ Opcions disponibles: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7687,350 +8036,345 @@ Opcions disponibles: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>S'ha produït un error en obrir el fitxer %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Activa el projecte « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Tanca el programa QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Desfer l'acció anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Restaura l'acció desfeta</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Transfereix els elements seleccionats al porta-retalls</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Copia els elements seleccionats al porta-retalls</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Desselecciona els elements seleccionats i selecciona els elements no seleccionats</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Recalcula les rutes dels conductors sense tenir en compte els canvis</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Gira els elements i textos seleccionats</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Edita l'element seleccionat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Gira els textos seleccionats a un angle específic</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Creació automàtica de conductors</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projectes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Col·leccions</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Utilitza la creació automàtica de conductor (s) sempre que sigui possible</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Restaura el nivell de zoom per defecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Afegeix una línia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Mostra els projectes oberts en subfinestres</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Mostra els projectes oberts en pestanyes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Permet seleccionar els elements</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Disposa les finestres en mosaic</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Disposa les finestres en cascada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Activa el projecte següent</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Activa el projecte anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Fitxer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Edita</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Visualitza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Fi&nestres</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Obre'n un de recent</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Mostra o amaga la barra d'eines principal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Mostra o amaga la barra d'eines de visualització</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Mostra o amaga la barra d'eines d'esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Mostra o amaga el panell d'elements</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Mostra o amaga la llista de canvis</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Mostra els projectes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Eines</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Visualitza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Afegeix</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Obre un fitxer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Sembla que el fitxer que intentes obrir no és llegible. Per tant, no es pot obrir. Si us plau, comprova els permisos del fitxer.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Sembla que el projecte que intentes obrir no és accessible en mode d'escriptura. Per tant serà obert en mode de només lectura.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Impossible obrir el projecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Sembla que el fitxer %1 no és un fitxer de projecte QElectroTech. Per tant no es pot obrir.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Feu doble clic per completar la forma, feu clic amb el botó dret per desfer l'últim punt</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Grup</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Edita l'element</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Edita el camp de text</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Edita la imatge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Edita el conductor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Edita l'objecte seleccionat</translation> @@ -8289,42 +8633,42 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Edita les dades de l'autor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Afegeix una línia</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Afegeix un rectangle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Afegeix una el·lipse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Afegeix un polígon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Afegeix text</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Afegeix un arc</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Afegeix un born</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Cancel·la</translation> </message> @@ -8335,22 +8679,22 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Mostra</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Massa primitives, no s'ha generat la llista: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8359,119 +8703,119 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Refès</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Afegeix un camp de text dinàmic</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Feu doble clic per completar la forma, feu clic amb el botó dret per desfer l'últim punt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Afegeix text d'elements no editables als esquemes</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Afegeix text d'elements editables als esquemes</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Avís</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Importar un fitxer DXF gran pot trigar una estona. Si us plau, tingueu paciència mentre es completa el procés d'importació...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Importa un element per canviar-ne la mida</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>Elements QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Parts</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Profunditat</translation> @@ -8507,31 +8851,31 @@ Si us plau, tingueu paciència mentre es completa el procés d'importació. <translation>Enganxa des de...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificat]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [només lectura]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Cap canvi</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Editor d'elements</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n part seleccionada.</numerusform> @@ -8539,35 +8883,35 @@ Si us plau, tingueu paciència mentre es completa el procés d'importació. </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>No hi ha borns</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>No hi ha borns</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>En absència de born, l'element no es pot connectar amb altres elements mitjançant conductors.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Error</b> :<br>Les connexions del full han de tenir un sol born.<br><b>Solució</b> :<br>Comproveu que l'element té un sol born</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>La verificació de l'element ha generat</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8576,180 +8920,180 @@ Si us plau, tingueu paciència mentre es completa el procés d'importació. </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> i</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Errors</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Avisos</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>El fitxer %1 no existeix.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>No es pot obrir el fitxer %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>El fitxer no conté un document XML vàlid</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Edició en mode de només lectura</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>No disposa dels privilegis necessaris per modificar aquest element. Per tant, serà obert en mode de només lectura.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>No es pot escriure a aquest fitxer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Impossible desar l'element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Impossible obrir el fitxer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Sembla que el fitxer %1 que estàs intentant obrir no existeix.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Recarrega l'element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>l'element ha estat modificat. Si fos recarregat es perdrien els canvis. Segur que vol recarregar l'element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Ha fallat el desament</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Ha fallat el desament, Les condicions requerides no són vàlides</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Desa com a</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Elements QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Desa l'element actual?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Vols desar l'element %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Obre un fitxer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Elements QElectroTech (*.elmt);;Fitxers XML (*.xml);;Tots els fitxers (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>No existeix l'element.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>L'element no existeix.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>El camí virtual escollit no correspon a cap element.</translation> @@ -8897,42 +9241,42 @@ Les condicions requerides no són vàlides</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projecte « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projecte %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Projecte sense títol</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [només lectura]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [modificat]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8940,19 +9284,19 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>S'ha produït un error mentre s'integrava el model.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Avís</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8961,7 +9305,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> Actualment esteu utilitzant la versió %2 de QElectroTech</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8970,32 +9314,32 @@ Aleshores és possible que l'obertura de tot o part d'aquest document Què voleu fer?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Avís </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>El projecte que esteu intentant obrir és parcialment compatible amb la vostra versió %1 de QElectroTech. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>Perquè sigui totalment compatible, obriu aquest mateix projecte amb la versió 0.8 o 0.80 de QElectroTech, deseu el projecte i torneu-lo a obrir amb aquesta versió. Què voleu fer?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Obrint el projecte actual...</b><br/>Creant els folis</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Obrint el projecte actual...</b><br/>Configurant referències creuades</p></translation> </message> @@ -9033,139 +9377,138 @@ Què voleu fer?</translation> <translation>Per duplicar aquesta plantilla, introduïu el nom que vulgueu per a la seva còpia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Nou</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Obre</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Obre des d'un fitxer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Desa</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Desa com a</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Desa en un fitxer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Surt</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Gestiona logos</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Zoom - apropa</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Zoom - allunya</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Zoom adaptat</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Sense zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Desa com a</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Models de caixetins QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Fusiona les cel·les</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Re&talla</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>Cop&ia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>En&ganxa</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Edita la informació complementària</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Afegeix una &línia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Afegeix una &columna</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Separa les cel·les</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9184,144 +9527,145 @@ Què voleu fer?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Fitxer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Edita</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Visualitza</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Eines</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Edita</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Visualitza</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Cap canvi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Cancel·lacions</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Propietats de la cel·la</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificat]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Només lectura]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Editor de caixetins</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Error</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Obre un model</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Obre un fitxer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Models de caixetins QElectroTech (*%1);; Fitxers XML (*.xml);;Tots els fitxers (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Desa el model com a</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Edita la informació complementària</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Pot emprar aquest camp lliure per esmentar els autors del caixetí, la llicència, o qualsevol dada que consideri útil.</translation> </message> @@ -9899,18 +10243,18 @@ Què voleu fer?</translation> <translation>Propietats del projecte</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Selecciona una imatge ...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Els fitxers d'imatge (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9919,7 +10263,7 @@ Què voleu fer?</translation> <translation>Error</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>No es pot carregar la imatge.</translation> </message> @@ -10244,24 +10588,24 @@ Què voleu fer?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Tipus</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Comentari</translation> @@ -10269,16 +10613,16 @@ Què voleu fer?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10752,7 +11096,7 @@ Què voleu fer?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>Això és un error al codi</translation> @@ -10763,7 +11107,7 @@ Què voleu fer?</translation> <translation>Camp de text dinàmic</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Importa un fitxer dxf</translation> </message> @@ -10827,22 +11171,22 @@ Voleu substituir-la?</translation> <translation>Importa la configuració de text : %1</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Per instal·lar el connector qet_tb_generator<br>Visiteu:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Requereix python 3.5 o superior.<br><B><U> Primera instal·lació a Windows</B></U><br>1. Instal·leu, si cal, python 3.5 o superior<br> Visiteu:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Actualització a Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>L'usuari podria iniciar aquest script en un terminal en aquest directori<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>Per instal·lar el connector qet_tb_generator<br>Visiteu:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Primera instal·lació a macOSX</B></U><br>1. Instal·leu, si cal, només el paquet python 3.11, <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 Executeu l'script Profile.command<br>perquè el programa utilitza el PATH codificat per localitzar el connector qet-tb-generator <br> Visiteu:<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>com fer-ho</a><br>2. instal·lació de qet_tb_generator amb pip3<br><B><U> Actualització a macOSX</B></U><br> instal·lació de pip3 --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Per instal·lar el connector qet_tb_generator<br>Visiteu:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Requereix python 3.5 o superior.<br><br><B><U> Primera instal·lació a Linux</B></U><br>1. comproveu que teniu pip3 instal·lat: pip3 --version<br>Si no, instal·leu-lo amb: sudo apt-get install python3-pip<br>2. Instal·leu el programa: sudo pip3 install qet_tb_generator<br>3. Executeu el programa: qet_tb_generator<br><br><B><U> Actualització a Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Error en iniciar el connector qet_tb_generator</translation> </message> @@ -11106,6 +11450,11 @@ Si us plau, descarregueu-lo des de l'enllaç següent i descomprimiu-lo a l <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11152,55 +11501,306 @@ Afegiu una taula nova o ajusteu la taula existent per mostrar la quantitat compl <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>una forma</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>una línia</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Afegeix un punt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Elimina aquest punt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Mida</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Afegeix un punt a un polígon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Elimina un punt d'un polígon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Modifica %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>un rectangle</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>una el·lipse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>un polígon</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12133,150 +12733,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>Formulari</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Línia</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Gruix</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Guió</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Puntets</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Línies i punts</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Línies punts punts</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Tipus</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Color</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Emplenament</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Estil</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Cap</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Amplada</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Alçada</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Guió personalitzat</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Continua</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Densitat 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Densitat 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Densitat 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Densitat 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Densitat 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Densitat 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Densitat 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Horitzontal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Creu</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Diagonal endarrera</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Diagonal endavant</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Diagonal en creu</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Bloqueja la posició</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Polígon tancat</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12285,30 +12912,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Modifica el traç d'una forma</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Modifica l'emplenament d'una forma</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Tanca el polígon</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Editeu una forma senzilla</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Edita les propietats d'una forma simple</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_cs.ts b/lang/qet_cs.ts index 7aa6890bb..587940256 100644 --- a/lang/qet_cs.ts +++ b/lang/qet_cs.ts @@ -586,7 +586,7 @@ <translation>Formulář</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Stav projektu:</translation> </message> @@ -621,54 +621,54 @@ <translation>Do</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Způsob aktualizace</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Vodič</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Pouze nový</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Oba</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Zakázat</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Prvek</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Pouze stávající</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>List</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Stávající</translation> </message> @@ -847,6 +847,14 @@ Poznámka: tyto volby automatické číslování ani NEPOVOLÍ ani nezakáží, <translation>Rozměry listu</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Poznámka: tyto volby automatické číslování ani NEPOVOLÍ ani nezakáží, <translation>vložit %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>Obrázek</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Vybrat obrázek...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Chyba</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Obrázek nelze nahrát.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1470,39 +1682,39 @@ Poznámka: tyto volby automatické číslování ani NEPOVOLÍ ani nezakáží, <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Spojit vybrané svorky</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Bez názvu</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Chyba</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Poznámka: tyto volby automatické číslování ani NEPOVOLÍ ani nezakáží, <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,99 +2864,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Obecné</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Prvek </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Název: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>List: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Typ: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Podtyp: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Poloha: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Natočení: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Rozměry: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Svorky: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Umístění: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Zamknout polohu</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Najít v panelu</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Upravit prvek</translation> </message> @@ -4545,7 +4762,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Toto je vzor záhlaví výkresů, který lze použít v listu.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [v projektu nepoužívaný]</translation> </message> @@ -4776,6 +4993,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Svisle</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4785,23 +5025,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Šířka</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Výška</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Zamknout polohu</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Rozměry obrázku</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Upravit velikost obrázku</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Náhled</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6575,118 +6913,118 @@ Následující proměnné jsou neslučitelné: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Smazat v projektu nepoužívané prvky</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Smazat prázdné skupiny</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Projekt byl změněn. Chcete uložit změny?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>Bez názvu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Projekt QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Smazat list?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Projekt pouze pro čtení</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Tento projekt je pouze pro čtení. Proto jej nelze vyčistit.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Smazat v projektu nepoužívané vzory</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Vyčistit projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Přidat list</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Jít zpět na začátek projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Jít na konec projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Tento projekt neobsahuje žádný list</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Uložit jako</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>Źádný činný projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Otevírá se projekt ...</b><br/>Vytváří se karty listů:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projekt</translation> @@ -6727,136 +7065,136 @@ Chcete uložit změny?</translation> <translation>Vlastní záhlaví výkresů</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Ukončit</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Skrýt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Ukázat</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Skrýt všechny editory výkresů</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Ukázat všechny editory výkresů</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Skrýt všechny editory prvků</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Ukázat všechny editory prvků</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Skrýt všechny editory záhlaví výkresu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Ukázat všechny editory záhlaví výkresu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Nový editor výkresu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Nový editor prvku</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Uzavřít QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Zmenší QElectroTech do systémové oblasti panelu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Ukázat QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Editory výkresů</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Editory prvků</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Editory záhlaví výkresu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Byl nalezen následující obnovovací soubor,<br>Chcete jej otevřít?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Byly nalezeny následující obnovovací soubory,<br>Chcete je otevřít?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Obnovovací soubor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Použití: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6873,7 +7211,7 @@ Dostupné volby: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6882,34 +7220,34 @@ Dostupné volby: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Stanovit adresář pro sbírku s prvky </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Stanovit adresář pro sbírku se vzory záhlaví výkresů </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Stanovit adresář s nastavením </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR Stanovit adresář s daty</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Stanovit adresář s jazykovými soubory @@ -6964,31 +7302,31 @@ Dostupné volby: <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Nastavení QElectroTechu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Nahrává se...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Nahrává se... Ikona v systémové oblasti panelu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -6997,887 +7335,898 @@ Dostupné volby: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Po&hled</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Zobrazit/Nezobrazit panel s prvky</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Přidat sloupec</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Překrývat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Vložit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Kopírovat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Vyjmout</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Zrušit výběr</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>Úp&ravy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Odstranit sloupec</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Uložit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Uložit jako</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Vyvést</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>&Okna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Zavřít</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Soubor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Tisk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Obrátit výběr</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Výběrový režim</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Tento panel uvádí různé změny použité na nynější list. Klepnutí na změnu dovolí vrácení listu do stavu hned po jejím použití.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Barva pozadí bílá/šedá</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Zobrazí barvu pozadí listu bílé nebo šedé</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Zobrazit mřížku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Zobrazit/Skrýt mřížku listů</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Vlastnosti listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Přidat list</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Smazat list</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Pohledový režim</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>Klást &vedle sebe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Vyvést do PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Vyvést jeden nebo několik listů nynějšího projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Vyvést do formátu CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Správce svorkovnic (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Spustit přídavný modul na vytváření svorkovnic</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Vyvést seznam názvů vodičů</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Vyvést vnitřní projektovou databázi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nový</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Vytvořit nový projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Otevřít stávající projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Zavřít nynější projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Uloží nynější projekt a všechny jeho listy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Uloží nynější projekt pod jiným souborovým názvem</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Přidat řádek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Odstranit řádek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Přidat do listu sloupec</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Odstranit z listu sloupec</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Zvětšit výšku listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Zmenšit výšku listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Odstraní vybrané prvky z listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Vybere všechny prvky na listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Zruší výběr všech prvků na listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Zvětší list</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Zmenší list</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Přizpůsobí zvětšení tak, že je zobrazován obsah bez ohledu na rámec</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Upraví zvětšení tak, že je zobrazena přesně určitá část listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Přidat čáru</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Přidat obdélník</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Přidat elipsu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Přidat mnohoúhelník</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Vyvede nynější list do jiného formátu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Vytiskne jeden nebo více listů nynějšího projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Hloubka</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Skupina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Vloží prvky ze schránky do listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Upraví vlastnosti listu (rozměry, údaje v záhlaví výkresu, vlastnosti vodičů...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Dovolí zobrazení listu, aniž by jej bylo možné upravovat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Nástroje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Otevřít</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Otevřít soubor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Obnovit výchozí zvětšení</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Otočit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Ukončit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Smazat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Vybrat vše</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Přizpůsobit přiblížení</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Oddálit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Přiblížit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Zpět</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Znovu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Obnovit výchozí vodiče</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Zobrazit/Skrýt hlavní pruh s nástroji</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Zobrazit/Skrýt pruh s nástroji pro zobrazení</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Zobrazit/Skrýt pruh s nástroji pro výkres</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Zobrazení</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Výkres</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Přidat textové pole</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Žádná úprava</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Zobrazit/Skrýt seznam kroků zpět</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Upravit vybranou položku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Seskupit vybrané texty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Otáčí vybrané prvky a texty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Otáčí vybrané texty v přesném úhlu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Hledat/Nahradit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Nedávno otevřené</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Projekt 1% uložený v adresáři: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Nezdá se, že by byl soubor, který se pokoušíte otevřít, čitelný. A nelze jej otevřít. Zkontrolujte, prosím, oprávnění k souboru.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Zdá se, že projekt, který se pokoušíte otevřít, není zapisovatelný. Bude tedy otevřen pouze pro čtení.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Používat karty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Používat okna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Zobrazení projektů</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Vlastnosti projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Vyčistit projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Projekt nelze otevřít</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Zdá se, že soubor %1 není souborem projektu QElectroTech. Nemůže být tedy otevřen.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Zpět</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Klepněte na některý z kroků pro návrat zpět ve změnách udělaných ve vašem výkresu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Natočit texty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Najít v panelu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Přidat obrázek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Přidat souhrn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Přiblížit obsah</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Zavře aplikaci QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Vrátí předchozí krok zpět</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Znovu zavede krok vrácený zpět</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Přenese vybrané prvky do schránky</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Zkopíruje vybrané prvky do schránky</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Zruší výběr vybraných prvků a vybere nevybrané prvky</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Najde prvek vybraný v panelu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Nastaví znovu cesty vodičů bez ohledu na uživatelem provedené změny</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Automatické vytvoření vodiče(ů)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projekty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Sbírky</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Použít automatické vytvoření vodiče(ů), když je to možné</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Obnoví výchozí úroveň přiblížení</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Ukáže různé otevřené projekty v podoknech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Přidat seznam součástí</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Ukáže různé otevřené projekty v kartách</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Dovolí výběr prvků</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Přidat plán svorek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Přidat textové pole do nynějšího listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Přidat obrázek do nynějšího listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Přidat čáru do nynějšího listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Přidat obdélník do nynějšího listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Přidat elipsu do nynějšího listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Přidat lomenou čáru do nynějšího listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Přidat plán svorek do nynějšího listu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Přidání</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Projekty QElectroTech (*.qet);;Soubory XML (*.xml);;Všechny soubory (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Soubor nelze otevřít</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Zdá se, že soubor %1, který se pokoušíte otevřít, už neexistuje.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Otevření souboru pouze pro čtení</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7887,7 +8236,7 @@ Dostupné volby: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7897,135 +8246,130 @@ Dostupné volby: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Dvakrát klepnout pro dokončení tvaru, klepnutí pravým tlačítkem myši pro zrušení posledního bodu</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Upravit prvek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Upravit textové pole</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Upravit obrázek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Upravit vodič</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Upravit vybraný předmět</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Během otevírání souboru %1 se vyskytla chyba.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Spustí projekt « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Chyba</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Uspořádá okna tím způsobem, že je položí vedle sebe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Uspořádá okna tím způsobem, že je položí v kaskádě pod sebe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Další projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Předchozí projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Spustí další projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Spustí předchozí projekt</translation> @@ -8232,53 +8576,53 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Zavést prvek pro změnu velikosti</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Přidat čáru</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Přidat elipsu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Přidat mnohoúhelník</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Přidat text</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Přidat oblouk kruhu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Přidat svorku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Zpět</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Znovu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>V nepřítomnosti svorky může být prvek spojen s jinými prvky prostřednictvím vodičů.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Žádná úprava</translation> </message> @@ -8323,13 +8667,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Upravit údaje o autorovi</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Části</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Hloubka</translation> @@ -8345,12 +8689,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Upravit vlastnosti prvku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Přidat dynamické textové pole</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Dvakrát klepnout pro dokončení tvaru, klepnutí pravým tlačítkem myši pro zrušení posledního bodu</translation> </message> @@ -8375,26 +8719,26 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Vložit z...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Změněno]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Pouze pro čtení]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Editor prvků</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>jedna vybraná část.</numerusform> @@ -8403,24 +8747,24 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Chybí svorka</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br> <b>Chyba</b > :<br>Odkazy na listy musí mít jednoduchou svorku.<br><b>Řešení</b> :<br> Ověřte, že prvek má jen jednu svorku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Ověření tohoto prvku vytvořilo</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8430,32 +8774,32 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> a</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Chyby</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Chybí svorka</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Přidat neupravitelný text prvku do výkresů</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Přidat upravitelný text prvku do výkresů</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8465,13 +8809,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Soubor %1 neexistuje.</translation> @@ -8483,254 +8827,254 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Zobrazení</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Soubor nelze otevřít %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Tento soubor není platným dokumentem XML</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Chyba</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Vydání pouze pro čtení</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Nemáte potřebná oprávnění, abyste mohl upravit tento prvek. Bude tedy otevřen pouze pro čtení.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Chyba</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Do tohoto souboru nelze zapisovat</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Prvek nelze uložit</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Příliš mnoho primitiv, seznam nebyl vytvořen: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Varování</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Zavedení velkého souboru DXF může trvat dlouho. Při zavádění, prosím, vyčkejte...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Zavést prvek pro změnu velikosti</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>Prvky QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Soubor nelze otevřít</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Zdá se, že soubor %1, který se pokoušíte otevřít, už neexistuje.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Registrace se nezdařila</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Registrace se nezdařila, podmínky nejsou platné</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Otevřít soubor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Prvky QElectroTech (*.elmt);;Soubory XML (*.xml);;Všechny soubory (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Nahrát znovu prvek</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Varování</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Tento prvek byl od posledního uložení změněn. Pokud jej znovu nahrajete, tyto změny budou ztraceny. Opravdu chcete tento prvek nahrát znovu?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Uložit jako</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Prvky QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Uložit nynější prvek?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Chcete uložit prvek %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Neexistující prvek.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Prvek neexistuje.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Vybraná virtuální cesta neodpovídá prvku.</translation> @@ -8751,7 +9095,7 @@ podmínky nejsou platné</translation> <translation>&Vložit</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Přidat obdélník</translation> </message> @@ -8898,48 +9242,48 @@ podmínky nejsou platné</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Varování</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projekt « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projekt %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Nepojmenovaný projekt</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [pouze pro čtení]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [změněno]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8947,13 +9291,13 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Během začleňování vzoru se vyskytla chyba.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8962,7 +9306,7 @@ Ta je novější než vaše verze! V současné době používáte QElectroTech ve verzi %2</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8971,32 +9315,32 @@ Pak je možné, že se otevření celého dokumentu nebo jeho části nezdaří. Co si přejete udělat ?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>Projekt, který se snažíte otevřít, je částečně kompatibilní s vaší verzí %1 programu QElectroTech. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>Aby byl projekt plně kompatibilní, otevřete jej s verzí 0.8 nebo 0.80 programu QElectroTech, uložte jej a otevřete znovu s touto verzí. Co si přejete udělat?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Varování </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Otevírá se projekt ...</b><br/>Vytváří se listy</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Otevírá se projekt ...</b><br/>Nastavují se křížové odkazy</p></translation> </message> @@ -9034,139 +9378,138 @@ Co si přejete udělat?</translation> <translation>Pro zdvojení tohoto vzoru zadejte, prosím, název pro jeho kopii</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Nový</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Otevřít</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Otevřít ze souboru</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Uložit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Uložit jako</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Uložit do souboru</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Ukončit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Spravovat loga</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Přiblížit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Oddálit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Přizpůsobit přiblížení</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Obnovit výchozí zvětšení</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Uložit jako</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Vzory záhlaví výkresu QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Sloučit buňky</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&Vyjmout</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Kopírovat</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Vložit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Upravit doplňující údaje</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Přidat řá&dek</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Přidat &sloupec</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Rozdělit buňky</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9185,144 +9528,145 @@ Co si přejete udělat?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Soubor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>Úp&ravy</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Zobrazení</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Nástroje</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Úpravy</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Pohled</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Žádná úprava</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Zpět</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Vlastnosti buňky</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Změněno]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation> [Pouze pro čtení]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Editor vzoru záhlaví výkresu</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Chyba</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Otevřít vzor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Otevřít soubor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Vzory záhlaví výkresu QElectroTech (*%1);;Soubory XML (*.xml);;Všechny soubory (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Uložit vzor jako</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Upravit doplňující údaje</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Toto pole můžete využít volně pro zmínění autorů výkresu, jeho licence, nebo cokoli dalšího, co považujete za užitečné.</translation> </message> @@ -9910,18 +10254,18 @@ Co si přejete udělat?</translation> <translation>Vlastnosti projektu</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Vybrat obrázek...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Obrázkové soubory (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9930,7 +10274,7 @@ Co si přejete udělat?</translation> <translation>Chyba</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Obrázek nelze nahrát.</translation> </message> @@ -10365,24 +10709,24 @@ Chcete je nahradit?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Typ</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Poznámka</translation> @@ -10390,16 +10734,16 @@ Chcete je nahradit?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10696,22 +11040,22 @@ Chcete je nahradit?</translation> <translation>Vytvoření vodičů</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Pro nainstalování přídavného modulu qet_tb_generator<br>navštivte :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>vyžaduje python 3.5 nebo novější.<br><B><U> Nejprve nainstalujte v OS Windows</B></U><br>1. V případě potřeby nainstalujte python 3.5 nebo novější<br> Navštivte:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Aktualizace na OS Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>uživatel tento skript může spustit v terminálu v tomto adresáři<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>Pro nainstalování přídavného modulu qet_tb_generator<br>navštivte:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Nejprve nainstalujte v macOSX</B></U><br>1. V případě potřeby nainstalujte python 3.11 nebo novější<br> Navštivte:<br><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. Spusťte skript Profile.command<br><B><U> Aktualizujte na macOSX</B></U><br>pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Pro nainstalování přídavného modulu qet_tb_generator<br>navštivte :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>vyžaduje python 3.5 nebo novější.<br><B><U> Nejprve instalace v OS Linux</B></U><br>1. Ověřte, že máte nainstalován pip3: pip3 --version<br>Pokud ne, nainstalujte pomocí: sudo apt-get install python3-pip<br>2. Nainstalujte program: sudo pip3 install qet_tb_generator<br>3. Spusťte program: qet_tb_generator<br><br><B><U> Aktualizace v OS Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Chyba při spouštění přídavného modulu qet_tb_generator</translation> </message> @@ -10739,7 +11083,7 @@ Chcete je nahradit?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>Toto je chyba v kódu</translation> @@ -10969,7 +11313,7 @@ Chcete je nahradit?</translation> <translation>Otevřít prvek</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Zavést soubor DXF</translation> </message> @@ -11117,6 +11461,11 @@ Stáhněte si jej podle tohoto odkazu a rozbalte jej do instalační složky.</t <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11163,55 +11512,306 @@ Přidejte novou tabulku nebo upravte stávající tabulku tak, aby zobrazovala v <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation> tvar</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation> čáru</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Přidat bod</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Smazat tento bod</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Velikost</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Přidat bod do mnohoúhelníku</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Smazat bod z mnohoúhelníku</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Upravit %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation> obdélník</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation> elipsu</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation> mnohoúhelník</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12140,150 +12740,177 @@ Ostatní pole se nepoužívají.</translation> <translation>Formulář</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Čára</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Tloušťka</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Plná</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Čárkovaná</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Tečkovaná</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Čerchovaná čára</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Čerchovaná čára se dvěma tečkami</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Vlastní čárkovaná čára</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Typ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Barva</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Výplň</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Styl</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Žádný</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Šířka</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Výška</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Plná čára</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Hustota 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Hustota 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Hustota 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Hustota 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Hustota 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Hustota 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Hustota 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Vodorovně</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Svisle</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Kříž</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Úhlopříčně zpět</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Úhlopříčně vpřed</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Úhlopříčně křížem</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Zamknout polohu</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Uzavřený mnohoúhelník</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12292,30 +12919,60 @@ Ostatní pole se nepoužívají.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Upravit čáru tvaru</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Upravit výplň tvaru</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Uzavřít mnohoúhelník</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Upravit jednoduchý tvar</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Upravit vlastnosti jednoduchého tvaru</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_da.ts b/lang/qet_da.ts index a3196c78b..c2e2b1484 100644 --- a/lang/qet_da.ts +++ b/lang/qet_da.ts @@ -586,7 +586,7 @@ <translation>Form</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Projekt status:</translation> </message> @@ -621,54 +621,54 @@ <translation>Til</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Opdatere retningslinjer</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Leder</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Ny</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Begge</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Deaktivere</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Symbol</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Eksisterende</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Ark</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Eksisterende</translation> </message> @@ -847,6 +847,14 @@ Bemærk: Disse muligheder VIL IKKE tillade eller blokere autonummereringer, kun <translation>Ark opsætning</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Bemærk: Disse muligheder VIL IKKE tillade eller blokere autonummereringer, kun <translation>Tilføj %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>et billede</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Vælg billede...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Fejl</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Kan ikke indlæse billede.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1470,39 +1682,39 @@ Bemærk: Disse muligheder VIL IKKE tillade eller blokere autonummereringer, kun <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Tilslutte valgte terminaler</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Ikke navngivet</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Fejl</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Bemærk: Disse muligheder VIL IKKE tillade eller blokere autonummereringer, kun <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,99 +2864,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Generelt</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Symbol </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Navn: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Ark: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Type: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Under type : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Placering: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotation: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Størrelse: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Terminaler: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Placering: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Lås placering</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Find i panel</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Rediger symbol</translation> </message> @@ -4545,7 +4762,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Titelblok skabelon der kan anvendes på ark.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [ikke brugt i projekt]</translation> </message> @@ -4776,6 +4993,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Lodret</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4785,23 +5025,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Bredde</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Lås placering</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Billede størrelse</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Ændre billede størrelse</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Oversigt</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6572,118 +6910,118 @@ Følgende variabler er ikke kompatible: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Slet ikke brugt symbol i projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Slet tom kategori</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Projekt er ændret. Skal ændringer gemmes?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>IkkeNavngivet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Projekt QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Slet ark?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Skrivebeskyttet projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Projekt er skrivebeskyttet og er derfor ikke muligt at rydde op i.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Slet ikke brugt titelblok skabelon i projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Ryd op i projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Tilføj ark</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Gå til projekt start</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Gå til projekt slut</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Projekt indeholder ingen ark</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Gem som</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>intet projekt vist</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Åbning af projekt...</b><br/>Oprettelse af ark faner:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projekt</translation> @@ -6724,137 +7062,137 @@ Skal ændringer gemmes?</translation> <translation>Brugertilpasset titelblokke</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Afslut</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Skjul</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Vis</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Skjul diagram redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Vis diagram redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Skjul symbol redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Vis symbol redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Skjul titelblok redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Vis titelblok redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Nyt diagram redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Nyt symbol redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Luk QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimer QElectroTech i statusfelt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Vis QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Diagram redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Symbol redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Titelblok redigering</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Følgende gendannelsesfil er fundet,<br>skal den åbnes?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translatorcomment><b>Følgende gendannede filer fundet,<br>skal de åbnes?</b><br></translatorcomment> <translation><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Gendanne fil</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Brug: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6871,7 +7209,7 @@ Kommandovalg: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6880,21 +7218,21 @@ Kommandovalg: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Angiv mappe for symbol samling </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Angiv mappe for titelblokke skabelon samling </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Angiv mappe for opsætning @@ -6949,43 +7287,43 @@ Kommandovalg: <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Opsæt QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Indlæser...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Indlæser... Ikon til statusfelt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Mappe med sprogfiler @@ -6995,887 +7333,898 @@ Kommandovalg: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Vis</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Vis eller skjul symbol panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Tilføj kolonne</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Overlappet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Indsæt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>K&opier</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Klip</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Vælg ingen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Redigere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Slet kolonne</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Gem</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Gem som</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Eksport</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>&Vinduer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Luk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Filer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Udskriv</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Vælg modsat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Vælg</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Vinduet viser de forskellige ændringer, der udføres på nuværende ark. Klik på en ænding for at vende tilbage til tidligere tilstand.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Bagrundsfarve hvid / grå</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Viser ark baggrundsfarve i hvid eller grå</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Vis gitter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Vis eller skjul ark gitter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Ark egenskab</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Tilføj ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Slet ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Vise</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Side om side</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Eksportere som PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Eksportere et eller flere ark fra nuværende projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Eksportere som CSV format</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Terminalrække håndtering (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Starte udvidelsesmodul til opretning af terminalblokke</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Eksportere liste med navne på ledere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Eksportere intern projekt database</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Ny</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Opret nyt projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Åbn eksisterende projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Luk nuværende projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Gem nuværende projekt og alle ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Gem nuværende projekt under andet filnavn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Tilføj linje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Slet linje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Tilføj kolonne til ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Slet kolonne fra ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Udvid ark højde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Indskrænk ark højde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Slet symbol fra ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Væg alle symboler på ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Vælg ingen symboler på ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Udvid ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Indskrænk ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Tilpas visning til indhold uanset ark ramme</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Tilpas visning til ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Tilføj linje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Tilføj rektangel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Tilføj cirkel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Tilføj flerkant</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Eksportere nuværende ark til andet format</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Udskriv et eller flere ark fra nuværende projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Placeringsniveau</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Gruppe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Indsæt symboler fra udklipsholder på ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Rediger ark egenskab (størrelse, titelblok information, leder egenskab etc.)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Tillader skrivebeskyttet ark visning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Værktøjer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Åbn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Åbn fil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Nulstil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Roter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Afslut</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Slet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Vælg alle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Tilpas ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Formindsk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Forstør</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Fortryd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Gendan</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Nulstil leder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Vis eller skjul værktøjslinje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Vis eller skjul værktøjslinjen Vis</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Vis eller skjul værktøjslinjen Diagram</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Vise</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Diagram</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Tilføj tekstfelt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Ingen ændring</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Vis eller skjul gendan liste</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Rediger emne</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Gruppere valgte tekste</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Roter symbol og tekst</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Roter tekst til vinkel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Søg/erstat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projekter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Senest åbnet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Projekt %1 registreret i bibliotek: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Skrivebeskyttet fil forsøgt åbnet. Kontroller fil rettigheder.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Projekt åbnes skrivebeskyttet.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>faneblade</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>vinduer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Vis projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Projekt egenskab</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Ryd op i projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Projekt kan ikke åbnes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>%1 er ikke en QElectroTech projekt fil.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Annuleringer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Klik på en ændring for at komme tilbage i diagram ændringer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Vælg tekst retning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Find i panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Tilføj billede</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Tilføj oversigt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Tilpas indhold</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Luk QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Fortryd foregående handling</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Gendan fortrudt handling</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Kopier symboler til udklipsholder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Kopier symboler fra udklipsholder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Vælger modsat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Find symbol i panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Genberegn leder rute uanset ændringer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Opret automatisk leder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projekter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Samlinger</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Brug automatisk opret af leder hvor det er muligt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Gendan standard visning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Vis åbne projekter i vinduer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Tilføje en BOM</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Vis åbne projekter i faneblade</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Tillader symbol valg</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Tilføje tekstfelt til det aktuelle ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Tilføje billede til det aktuelle ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Tilføje linje til det aktuelle ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Tilføje rektangel til det aktuelle ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Tilføje elipse til det aktuelle ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Tilføje flerkant til det aktuelle ark</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Tilføj</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech projekter (*.qet);; XML-filer (*.xml);; Alle filer (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Kan ikke åbne filen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Fil %1 findes ikke.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Projekt åbnes skrivebeskyttet</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7884,7 +8233,7 @@ Kommandovalg: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7893,135 +8242,130 @@ Kommandovalg: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Dobbeltklik for at afslutte formular, højreklik for at fortryde det sidste punkt</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Rediger symbol</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Rediger tekstfelt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Rediger billede</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Rediger leder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Rediger objekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Der opstod en fejl under åbning af fil %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Aktiver projekt « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fejl</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Arranger vinduer side om side</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Arranger vinduer overlappet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Næste projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Foregående projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Aktiver næste projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Aktiver foregående projekt</translation> @@ -8225,53 +8569,53 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Tilføj streg</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Tilføj cirkel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Tilføj flerkant</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Tilføj tekst</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Tilføj cirkelbue</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Tilføj terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Fortryd</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Gendan</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Ved mangel af terminal kan symbol forbindes til andre symboler via leder.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Ingen ændring</translation> </message> @@ -8316,13 +8660,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Rediger forfatter informationer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Dele</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Placeringsniveau</translation> @@ -8338,12 +8682,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Rediger symbol egenskab</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Tilføj dynamisk tekstfelt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Dobbeltklik for at afslutte formular, højreklik for at fortryde det sidste punkt</translation> </message> @@ -8368,26 +8712,26 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Indsæt fra...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[ændret]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [skrivebeskyttet]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Symbol redigering</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n del valgt.</numerusform> @@ -8395,24 +8739,24 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Mangler terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br> <b>Fejl</ b>:<br>Ark rapport skal have én terminal<br> <b>Løsning</ b>:<br>Kontroller symbol kun har én terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Efterprøvning af symbol har genereret</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8421,32 +8765,32 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> og</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Fejl</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Mangler terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Tilføje ikke-redigerbar elementtekst i skema</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Tilføje redigerbar elementtekst i skema</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8455,13 +8799,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Fil %1 findes ikke.</translation> @@ -8473,254 +8817,254 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Vis</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Kan ikke åbne fil %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Fil er ikke gyldigt XML dokument</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Fejl</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Skrivebeskyttet</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Fil åbnes skrivebeskyttet. Kontroller fil rettigheder.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fejl</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Kan ikke skrive til fil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Kan ikke gemme symbol</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Advarsel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Import af stor dxf fil kan tage tid vent venligst...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">QElectroTech symboler (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Kan ikke åbne fil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Fil %1 findes ikke.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Gem mislykkedes</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Gem mislykkedes, betingelser ikke gyldig</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Åbn fil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech symboler (*.elmt);;XML filer (*.xml);;Alle filer (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Genindlæs symbol</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Advarsler</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Symbol er ændret. Ved genindlæs vil ændringer gå tabt. Genindlæs symbol?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Gem som</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech symboler (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Gem nuværende symbol?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Gem symbol %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Ikke eksisterende symbol.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Symbol findes ikke.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Valgt virtuel sti svarer ikke til et symbol.</translation> @@ -8741,7 +9085,7 @@ betingelser ikke gyldig</translation> <translation>&Indsæt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Tilføj rektangel</translation> </message> @@ -8888,48 +9232,48 @@ betingelser ikke gyldig</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Advarsel</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projekt « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projekt %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Ikke navngivet projekt</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [skrivebeskyttet]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [ændret]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8937,50 +9281,50 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Der opstod fejl under integration af skabelon.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Advarsel </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Åbning af projekt...</b><br/>Oprettelse af ark:</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Åbning af igangværende projekt...</b><br/>Opsætning af referencekors</p></translation> </message> @@ -9018,139 +9362,138 @@ Que désirez vous faire ?</source> <translation>For at duplikér skabelon indtast et navn for kopi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Ny</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Åbn</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Åbn fra fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Gem</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Gem som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Gem til fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Afslut</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Rediger logo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Forstør</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Formindsk</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Tilpas ark</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Nulstil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Gem som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech titelblokke skabeloner (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Flet celler</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&Klip</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>K&opier</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Indsæt</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Rediger informationer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Tilføj &linje</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Tilføj &kolonne</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Adskil celler</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9169,145 +9512,146 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Filer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Rediger</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Vise</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Værktøjer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Rediger</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Vise</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Ingen ændring</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translatorcomment>Funktion beskrivende oversættelse</translatorcomment> <translation>Redigeringshistorik</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Celle egenskab</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Ændret]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Skrivebeskyttet]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Titelblok skabelon redigering</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Fejl</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Åbne skabelon</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Åbne fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech titelblokke skabeloner (*%1);;XML filer (*.xml);;Alle filer (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Gem skabelon som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Rediger informationer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Feltet kan bruges til titelblok forfatter, licens eller andre relevante informationer.</translation> </message> @@ -9885,18 +10229,18 @@ Que désirez vous faire ?</source> <translation>Projekt egenskab</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Vælg billede...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Billedfiler (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9905,7 +10249,7 @@ Que désirez vous faire ?</source> <translation>Fejl</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Kan ikke indlæse billede.</translation> </message> @@ -10339,24 +10683,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Type</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Kommentar</translation> @@ -10364,16 +10708,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10670,22 +11014,22 @@ Voulez-vous la remplacer ?</source> <translation>Oprette ledere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>For at installere udvidelsesmodul qet_tb_generator<br>Besøg: <a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Kræver python 3.5 eller over.<br><B><U>Første installering på Windows</B></U><br>1. Installere, hvis påkrævet, python 3.5 eller over<br>Besøg:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip installere qet_tb_generator<br><B><U>Opdatere på Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>brugeren kan i en terminal udføre dette skript i følgende mappe<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>For at installere udvidelsesmodulet qet_tb_generator<br>Besøg:<br> <a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a> <br> <br>Kræver python 3.5 eller nyere.<br> <br> <B> <U>Første installation på Linux</B> </U> <br>1. kontrllere, at pip3 er installeret: pip3 --version<br>Hvis ikke, installere med: sudo apt-get install python3-pip<br>2. installere programmet: sudo pip3 install qet_tb_generator<br>3. kør programmet: qet_tb_generator<br> <br> <B> <U>Opdatering på Linux</B> </U> <br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Fejl ved opstart af qet_tb_generator udvidelsesmodul</translation> </message> @@ -10713,7 +11057,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>der er en fejl i koden</translation> @@ -10943,7 +11287,7 @@ Voulez-vous la remplacer ?</source> <translation>Åbn symbol</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Importer dxf fil</translation> </message> @@ -11087,6 +11431,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11133,55 +11482,306 @@ Tilføj ny tabel, eller juster eksisterende tabel for at vise alle oplysninger.< <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>en figur</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>streg</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Tilføje et punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Slette et punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Størrelse</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Tilføje et punkt til en flerkant</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Slette et punkt i en flerkant</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Ændre %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>rektangel</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>cirkel</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>en flerkant</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12098,150 +12698,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>Form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Streg</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Tykkelse</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Stiplet streg</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Stiplet punkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Stiplet streg og punkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Stiplet streg og punkt og punkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Tilpasset stiplet streg</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Type</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Farve</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Fyld</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Typografi</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Ingen</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Bredde</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Fuld</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Tæthed 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Tæthed 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Tæthed 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Tæthed 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Tæthed 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Tæthed 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Tæthed 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Vandret</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Lodret</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Kors</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Skraveret venstre</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Skraveret højre</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Kryds</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Lås placering</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Luk flerkant</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12250,30 +12877,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Ændre streg i form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Ændre fyld i form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Luk flerkant</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Ændre en simpel formular</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Ændre simpel formular egenskab</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_de.ts b/lang/qet_de.ts index 2be797d7d..20404ea70 100644 --- a/lang/qet_de.ts +++ b/lang/qet_de.ts @@ -588,7 +588,7 @@ <translation>Form</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Stand des Projekts:</translation> </message> @@ -623,54 +623,54 @@ <translation>bis</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Richtlinie zur Aktualisierung</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Leiter</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>nur Neue</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Beide</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>nicht aktualisieren</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Bauteile</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>nur Vorhandene</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Seite</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Vorhandene</translation> </message> @@ -850,6 +850,14 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.</transl <translation>Seitenmaße</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1416,13 +1424,217 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.</transl <translation>Einfügen von .%1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>eines Bildes</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Ein Bild auswählen...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Fehler</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Laden vom Bild fehlgeschlagen.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1474,40 +1686,40 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.</transl <translation>Vorlage erstellen</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Ausgewählte Anschlüsse verbinden</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Ohne Titel</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation>Vorlage erstellt</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation>Die Vorlage wurde erfolgreich gespeichert unter %1</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation>Fehler</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation>Die Datei konnte nicht geschrieben werden.</translation> </message> @@ -2047,7 +2259,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.</transl <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation>Ein Element automatisch nummerieren</translation> @@ -2658,101 +2870,106 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Allgemein</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Bauteil </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Name: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Seitennummer: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Typ: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Subtyp: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Position: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Drehung: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Abmessungen: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Anschlüsse: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation>Maximale Anzahl definierter Slave-Kontakte: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation>Anzahl der verwendeten Slave-Kontakte: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Dateipfad: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Position sperren</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Bauteil in Sammlung suchen</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Bauteil bearbeiten</translation> </message> @@ -4570,7 +4787,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren <translation>Das ist eine Schriftfeld-Vorlage, die auf eine Seite angewendet werden kann.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [im Projekt nicht verwendet]</translation> </message> @@ -4802,6 +5019,29 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren <translation>Vertikal</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished">Zurücksetzen</translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4811,23 +5051,121 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Breite</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Höhe</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Position sperren</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Bildgröße</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Bildgröße ändern</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Vorschau</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6596,117 +6934,117 @@ Folgende Variablen sind inkompatibel: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Das Projekt wurde verändert. Möchten Sie die Änderungen speichern?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Speichern unter</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>Kein Projekt zum Anzeigen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>QElectroTech-Projekt (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>ohne Namen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Seite löschen?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation>Sind Sie sicher, dass Sie dieses Folio aus dem Projekt löschen möchten?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Schreibgeschütztes Projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Dieses projekt ist schreibgeschützt. Es ist nicht möglich es zu reinigen.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Im Projekt unbenutzte Schriftfeld-Vorlagen löschen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Im Projekt nicht benutzte Bauteile löschen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Leere Kategorien löschen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Projekt bereinigen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Neue Seite hinzufügen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Zurück zum Anfang des Projekts</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Zum Projektende springen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation>eine Seite nach links</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation>eine Seite nach rechts</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Dieses Projekt beinhaltet keine Seite</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Öffnen des Projekts...</b><br/>Seitenreiter werden erstellt:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projekt</translation> @@ -6795,167 +7133,167 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech Einstellungen</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Lade...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Lade... Symbole des Systemsbenachrichtigungsfelds</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Beenden</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Verstecken</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Zeigen</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Verstecke alle Schaltplaneditoren</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Zeige alle Schaltplaneditoren</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Verstecke alle Bauteileditoren</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Zeige alle Bauteileditoren</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Verstecke alle Schriftfeld-Editoren</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Zeige alle Schriftfeld-Editoren</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Neuer Schaltplaneditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Neuer Bauteileditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Anwendung QElectroTech schließen</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>QElectroTech in Systembenachrichtigungsfeld minimieren</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>QElectroTech wiederherstellen</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Schaltplaneditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Bauteileditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Schriftfeld-Editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Die folgende Sicherungsdatei wurde gefunden,<br>Möchten Sie sie öffnen?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Die folgenden Sicherungsdateien wurden gefunden,<br>Möchten Sie sie öffnen?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Sicherungsdatei</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation>Absturzbericht</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation>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.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation>Diagnosebericht</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation>Hier finden Sie die neuesten Protokolleinträge dieser Sitzung. Überprüfen Sie den Inhalt, bevor Sie ihn einem öffentlichen Fehlerbericht beifügen.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Verwendung: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6964,7 +7302,7 @@ Hier sind die letzten Meldungen, die vor dem Beenden aufgezeichnet wurden – Si </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6981,35 +7319,35 @@ Verfügbare Optionen: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Setzt Pfad zur Bauteilsammlung </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Pfad zur Schriftfeld-Sammlung setzen </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Setzt Pfad zur Konfiguration </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR Setzt Pfad zu den Daten </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Setzt Pfad zu den Sprachdateien @@ -7019,804 +7357,814 @@ Verfügbare Optionen: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translatorcomment>Rückgängig</translatorcomment> <translation>Arbeitsschritte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Keine Änderungen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Klicken Sie auf eine Aktion, um die Bearbeitung rückgängig zu machen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Neu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Öffnen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Schließen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Speichern</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Speichern unter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Exportieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>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.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Drucken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Beenden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Rückgängig</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Wiederholen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Ausschneiden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Kop&ieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>E&infügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Seiteneigenschaften</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Neue Seite hinzufügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Seite löschen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Betriebsmittelverzeichnis einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Klemmenplan-Plugin starten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Erstellt ein neues Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Öffnet ein existierendes Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Schliesst das aktuelle Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Speichert das aktuelle Projekt und alle seine Seiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Speichert das aktuelle Projekt unter einem anderen Dateinamen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Fügt eine neue Spalte zur Seite hinzu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Löscht eine Spalte der Seite</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Vergrössert die Höhe der Seite</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Verkleinert die Höhe der Seite</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Ausgewählte Texte gruppieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Entfernt die ausgewählten Bauteile von der Seite</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Alles auswählen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Auswahl aufheben</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Auswahl umkehren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Löschen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Drehen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Texte drehen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Bauteil in Sammlung suchen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Leiter zurücksetzen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Textfeld einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Auswahl bearbeiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Spalte einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Bild einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Spalte entfernen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Projekteigenschaften</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Projekt bereinigen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Inhaltsverzeichnis einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Vergrößern</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Verkleinern</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Auf Inhalt einpassen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Seite einpassen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Kein Zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>mittels Reiter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>mittels Fenster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Auswahlmodus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Ansichtmodus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Kacheln</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Überlappende Fenster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Nächstes Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Vorheriges Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Wählt alle Bauteile der Seite aus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Wählt alle Bauteile der Seite ab</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Vergrössert die Seite</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Verkleinert die Seite</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Passt die Ansicht auf den Inhalt der Seite an, unabhängig vom Seitenrahmen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Passt die Ansicht genau auf den Seitenrahmen an</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Rechteck einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Ellipse einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Polylinie einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>schließt QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>bricht die letzte Aktion ab</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>stellt die abgebrochene Aktion wieder her</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>verschiebt die Auswahl in die Zwischenablage</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>kopiert die Auswahl in die Zwischenablage</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>kehrt die Auswahl um</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>dreht die Auswahl</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>dreht die ausgewählten Texte in einem bestimmten Winkel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Sucht das Bauteil in der Sammlung</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>zeichnet die Leiter neu, ohne die Änderungen zu berücksichtigen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Automatische Leiterverbindung aktivieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projektdaten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Bauteilsammlungen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Wenn möglich, automatische Leiterverbindung benutzen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Raster anzeigen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Zeige den Hintergrundsraster der Seiten an</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Zeile einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Zeile entfernen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Standardansicht wiederherstellen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Linie einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>zeige die geöffneten Projekte in Fenstern an</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>zeige die geöffneten Projekte in Reitern an</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>wählt Bauteile aus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>ordnet die Fenster in Kacheln an</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> - <location filename="../sources/qetdiagrameditor.cpp" line="781"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation>Diagramm-Editor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Als PDF speichern</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Eine oder mehrere Seiten des aktuellen Projekts exportieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation>Automatische Unterbrechung der Leitung(en)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation>Vorhandene Leiter beim Platzieren eines Elements automatisch abschneiden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation>Hilfslinien anzeigen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation>Zeigt die Hilfslinien an oder blendet sie aus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Als CSV-Datei exportieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Klemmleisten-Manager (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Leiterbeschriftungen exportieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation>Verdrahtungsplan erstellen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation>Automatische Nummerierung der Klemmen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Interne Datenbank exportieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>ordnet die Fenster überlappend an</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>wechselt zum nächsten Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>wechselt zum vorherigen Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation>Auswahl als Gruppe drehen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation>Dreht die Auswahl um den Mittelpunkt der Gruppe der ausgewählten Teile</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation>PDF hinzufügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Klemmenplan hinzufügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Fügt ein Textfeld auf die aktuelle Seite ein</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Fügt ein Bild auf die aktuelle Seite ein</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation>Fügt eine PDF-Seite zur aktuellen Seite hinzu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Fügt eine Linie auf die aktuelle Seite ein</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Fügt ein Rechteck auf die aktuelle Seite ein</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Fügt eine Ellipse auf die aktuelle Seite ein</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Fügt eine Polylinie auf die aktuelle Seite ein</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Klemmenplan auf aktueller Seite einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Suchen/ersetzen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation>Zu einem Element navigieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation>Ein Element im Folio schnell suchen und auswählen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Tiefe/Ebene</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Datei</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>B&earbeiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Anzeige</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Fe&nster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Zuletzt geöffnet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Zeigt oder versteckt die Hauptwerkzeugsleiste</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Zeigt oder versteckt die Anzeigeleiste</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Zeigt oder versteckt die Schaltplan-Werkzeugsleiste</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Zeigt oder versteckt die Bauteilsammlung</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Zeigt oder versteckt die Änderungsliste</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Projekte anzeigen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech-Projekte (*.qet);;XML-Dateien (*.xml);;Alle Dateien (*)</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation> @@ -7825,7 +8173,7 @@ Verfügbare Optionen: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation> @@ -7834,221 +8182,216 @@ Verfügbare Optionen: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation>Schriftarten des Projekts</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Doppelclick, um die Form zu beenden / Rechtsklick, um den letzten Punkt zu entfernen</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation>Klemme kann nicht gelöscht werden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation>Die Löschung kann nicht durchgeführt werden, da die Auswahl eine oder mehrere Klemmen enthält, die überbrückt sind und/oder zu einer Klemme mit mehreren Ebenen gehören. Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffenen Klemmen, um sie löschen zu können</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Gruppe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Ein Fehler ist beim Öffnen der Datei %1 aufgetreten.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Aktiviert das Projekt "%1"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Werkzeuge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Hintergrundfarbe weiß/grau</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Schalte die Hintergrundfarbe der Seiten in weiß oder grau um</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Aktuelle Seite in ein anderes Format exportieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Druckt eine oder mehrere Seiten des aktuellen Projekts</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Inhalt der Zwischenablage auf Seite einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Bearbeitet die Seiteneigenschaften (Maße, Schriftfeld-Daten, Leitereigenschaften...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Wechselt in das Ansichtsmodus, in dem die Seite nicht bearbeitet werden kann</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Anzeige</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Schaltplan</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Einfügen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Projekt %1 gespeichert im Pfad: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Datei öffnen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Öffnen der Datei nicht möglich</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Die zu öffnende Datei %1 existiert nicht.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Die zu öffnende Datei kann zum Lesen nicht zugegriffen werden. Prüfen Sie die Zugriffsrechte der Datei.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Projekt wird schreibgeschützt geöffnet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Es sind keine Schreibrechte für das zu öffnende Projekt vorhanden. Es wird trotzdem schreibgeschützt geöffnet.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Öffnen des Projekts gescheitert</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Die Datei %1 ist vermutlich keine QElectroTech-Projektdatei. Sie kann nicht geöffnet werden.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Bauteil bearbeiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Textfeld bearbeiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Bild bearbeiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Leitereigenschaften bearbeiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Auswahl bearbeiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation>Möchten Sie diese Seite wirklich löschen?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation>Seiten löschen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation>Möchten Sie die ausgewählten %1 Seiten wirklich löschen?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation>%1 Seiten löschen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation>Folios verschieben</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fehler</translation> @@ -8307,42 +8650,42 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene <translation>Informationen über Autoren bearbeiten</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Linie einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Rechteck einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Ellipse einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Polygon einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Text einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Bogen einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Anschluss einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Rückgängig</translation> </message> @@ -8353,34 +8696,34 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene <translation>Werkzeugsleisten anzeigen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Zu viele Einzelteile, Liste nicht generiert: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Wiederholen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Warnung</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Das Importieren einer großen DXF-Datei kann einige Zeit in Anspruch nehmen.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Teile</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Tiefe</translation> @@ -8396,7 +8739,7 @@ veuillez patienter durant l'import...</source> <translation>Bauteileigenschaften bearbeiten</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Doppelclick, um die Form zu beenden / Rechtsclick, um den letzten Punkt zu entfernen</translation> </message> @@ -8421,31 +8764,31 @@ veuillez patienter durant l'import...</source> <translation>Einfügen aus...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[geändert]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [schreibgeschützt]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Keine Änderung</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Bauteileditor</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n ausgewähltes Teil.</numerusform> @@ -8453,50 +8796,50 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Anschluss nicht vorhanden</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Anschluss nicht vorhanden</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Ohne Anschlüsse kann das Bauteil nicht mit anderen Bauteilen mittels Leiter verbunden werden.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Dynamisches Textfeld einfügen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Fügt einen Bauteiltext ein, der im Schaltplaneditor NICHT bearbeitet werden kann</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Fügt einen Bauteiltext ein, der im Schaltplaneditor bearbeitet werden kann</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><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</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Die Überprüfung dieses Bauteils generierte</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8505,98 +8848,98 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> und</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Fehler</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Warnungen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Die Datei %1 existiert nicht.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Öffnen der Datei %1 nicht möglich.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Diese Datei ist kein gültiges XML-Dokument</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Fehler</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Schreibgeschützte Bearbeitung</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Sie haben nicht die Schreibrechte, um dieses Bauteil zu verändern: es wird schreibgeschützt geöffnet.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fehler</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Schreiben in diese Datei nicht möglich</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Dieses Bauteil kann nicht gespeichert werden</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation>Falsche Anzahl von Anschlüssen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation><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</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8605,168 +8948,168 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Öffnen der Datei nicht möglich</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Die zu öffnende Datei %1 existiert nicht.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation>Element-Editor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation>Als SVG exportieren</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation>SVG-Bild (*.svg)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation>Export fehlgeschlagen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation>Die Datei „%1“ kann nicht beschrieben werden.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Bauteil neu laden</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Das Bauteil wurde verändert. Beim neu Laden gehen die Änderungen verloren. Möchten Sie wirklich das Bauteil neu laden?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Importiere Element zum Skalieren</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>QElectroTech-Bauteil (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Speichervorgang gescheitert</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Speichervorgang gescheitert! Die erforderlichen Bedingungen wurden nicht erfüllt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Speichern unter</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech-Bauteil (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Aktuelles Bauteil speichern?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Bauteil %1 speichern?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Datei öffnen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech-Bauteile (*.elmt);;XML-Dateien (*.xml);;Alle Dateien (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Bauteil nicht vorhanden.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Bauteil existiert nicht.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Der gewählte virtuelle Pfad passt nicht zu einem Bauteil.</translation> @@ -9051,127 +9394,126 @@ Was möchten Sie tun?</translation> <translation>Geben Sie einen neuen Namen für die Kopie ein</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Neu</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Öffnen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Aus einer Datei öffnen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Speichern</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Speichern unter</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>In einer Datei speichern</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Beenden</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&Ausschneiden</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>Kop&ieren</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>E&infügen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Logos verwalten</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Zusätzliche Informationen bearbeiten</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Vergrößern</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Verkleinern</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Einpassen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Kein Zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Zei&le einfügen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>&Spalte einfügen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>Zellen &verbinden</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>Zellen &trennen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9190,156 +9532,157 @@ Was möchten Sie tun?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation>Schriftfeld-Editor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Datei</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>B&earbeiten</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Anzeige</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Werkzeuge</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Bearbeiten</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Anzeige</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Keine Änderung</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Stornierungen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Zelleneigenschaften</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[geändert]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[schreibgeschützt]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Schriftfeld-Editor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fehler</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation>Die Vorlage „%1“ kann nicht gespeichert werden.</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Vorlage öffnen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Datei öffnen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech-Schriftfeld-Vorlagen (*%1);;XML-Dateien (*.xml);;Alle Dateien (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Vorlage speichern unter</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation>Der Name „%1“ ist ungültig: Er darf die folgenden Zeichen nicht enthalten: \ / : * ? " < > |</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Speichern unter</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech Schriftfeld-Vorlagen (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Zusätzliche Informationen bearbeiten</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Sie können dieses freie Textfeld benutzen, um die Autoren, die Lizenz, oder jede weitere nützliche Information über das Schriftfeld zu speichern.</translation> </message> @@ -9917,18 +10260,18 @@ Was möchten Sie tun?</translation> <translation>Projekteigenschaften</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Ein Bild auswählen...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Bilddateien (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9937,7 +10280,7 @@ Was möchten Sie tun?</translation> <translation>Fehler</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Laden vom Bild fehlgeschlagen.</translation> </message> @@ -10373,24 +10716,24 @@ Möchten Sie sie ersetzen?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation>Typ</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation>Adresse</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Kommentar</translation> @@ -10398,16 +10741,16 @@ Möchten Sie sie ersetzen?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation>Querverweis</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10704,22 +11047,22 @@ Möchten Sie sie ersetzen?</translation> <translation>Leiter erstellen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Fehler beim Ausführen vom Plugin qet_tb_generator</translation> </message> @@ -10739,15 +11082,15 @@ Möchten Sie sie ersetzen?</translation> <translation>Einfügen</translation> </message> <message> - <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/ElementsCollection/elementslocation.cpp" line="401"/> - <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> <location filename="../sources/SearchAndReplace/searchandreplaceworker.cpp" line="351"/> <location filename="../sources/SearchAndReplace/searchandreplaceworker.cpp" line="474"/> <location filename="../sources/SearchAndReplace/searchandreplaceworker.cpp" line="509"/> <location filename="../sources/SearchAndReplace/searchandreplaceworker.cpp" line="538"/> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> + <location filename="../sources/conductorproperties.cpp" line="819"/> + <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>dies ist ein Programmfehler</translation> @@ -10977,7 +11320,7 @@ Möchten Sie sie ersetzen?</translation> <translation>Element öffnen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>DXF-Datei importieren</translation> </message> @@ -11125,6 +11468,11 @@ Bitte laden Sie diese über den Link herunter und entpacken Sie sie in den Insta <source>Impossible de rendre la page PDF.</source> <translation>Die PDF-Seite kann nicht dargestellt werden.</translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11171,55 +11519,306 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>ein Shape</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>einer Linie</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Punkt einfügen</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Dieser Punkt löschen</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Größe</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Punkt einem Polygon hinzufügen</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Punkt eines Polygons löschen</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>%1 ändern</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>eines Rechtecks</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>einer Ellipse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>eine Polylinie</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12149,150 +12748,177 @@ Andere Felder werden nicht verwendet.</translation> <translation>Form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Linie</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Dicke</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Strich</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Gestrichelt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Strichpunkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Strich-Punkt-Punkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Benutzerdefiniertes Strichmuster</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Typ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Farbe</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Füllung</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Stil</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Kein</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Breite</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Höhe</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Gefüllt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Dichte 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Dichte 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Dichte 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Dichte 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Dichte 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Dichte 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Dichte 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Vertikal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Gekreuzt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Diagonal rückwärts</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Diagonal vorwärts</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Diagonal gekreuzt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Position sperren</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Geschlossenes Polygon</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12301,30 +12927,60 @@ Andere Felder werden nicht verwendet.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Linie einer Form ändern</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Füllung einer Form ändern</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Polygon schliessen</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Geometrische Form ändern</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Eigenschaften einer geometrischen Form ändern</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_el.ts b/lang/qet_el.ts index e5ce3271f..76d06fa6f 100644 --- a/lang/qet_el.ts +++ b/lang/qet_el.ts @@ -586,7 +586,7 @@ <translation>Φόρμα</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Κατάσταση έργου:</translation> </message> @@ -621,54 +621,54 @@ <translation>Μέχρι</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Πολιτική Ενημέρωσης</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Αγωγός</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Μόνο Νέοι</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Αμφότεροι</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Απενεργοποίηση</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Στοιχείο</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Μόνο Υπάρχοντες</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Φύλλο</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Υπάρχοντες</translation> </message> @@ -847,6 +847,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Διαστάσεις σελίδας</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Προσθήκη %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>εικόνα</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Επιλογή εικόνας...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Σφάλμα</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Αδυναμία φόρτωσης της εικόνας</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1470,39 +1682,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Σύνδεση των επιλεγμένων ακροδεκτών</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Ανώνυμο</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Σφάλμα</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,99 +2864,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Γενικά</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Στοιχείο </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Όνομα: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Σελίδα: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Τύπος: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Υπο-τύπος:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Θέση: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Περιστροφή :%1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Διαστάσεις: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Ακροδέκτες: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Τοποθέτηση: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Κλείδωμα της θέσης</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Εύρεση στο πλαίσιο</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Επεξεργασία του στοιχείου</translation> </message> @@ -4545,7 +4762,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Αυτό είναι ένα πρότυπο πινακίδας, το οποίο μπορεί να εφαρμοστεί σε μια σελίδα.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [δεν χρησιμοποιείται στο έργο]</translation> </message> @@ -4776,6 +4993,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Κάθετα</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4785,23 +5025,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Πλάτος</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Κλείδωμα της θέσης</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Διαστάσεις εικόνας</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Επεξεργασία μεγέθους εικόνας</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Προεπισκόπηση</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6570,118 +6908,118 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Διαγραφή των αχρησιμοποίητων στοιχείων του έργου</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Διαγραφή των άδειων κατηγοριών</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Το έργο έχει τροποποιηθεί. Θέλετε να αποθηκευτούν οι αλλαγές;</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>Ανώνυμο</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Έργο QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Διαγραφή φύλλου;</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Έργο μόνο για ανάγνωση</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Αυτό το έργο είναι μόνο για ανάγνωση. Κατά συνέπεια, δεν μπορεί να καθαριστεί.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Διαγραφή των μη χρησιμοποιούμενων προτύπων από το έργο</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Καθαρισμός του έργου</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Προσθήκη φύλλου</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Επιστροφή στην αρχή του έργου</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Μετάβαση στο τέλος του έργου</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Το έργο δεν περιέχει φύλλα</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Αποθήκευση ως</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>Χωρίς έργο προς εμφάνιση</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Άνοιγμα του έργου ...</b><br/>Δημιουργία καρτελών σελίδων :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Έργο</translation> @@ -6722,136 +7060,136 @@ Voulez-vous enregistrer les modifications ?</source> <translation>Πινακίδες χρήστη</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Τερματισμός</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>Από&κρυψη</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Εμφάνιση</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Απόκρυψη όλων των επεξεργαστών διαγραμμάτων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>Εμ&φάνιση όλων των επεξεργαστών διαγραμμάτων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>Από&κρυψη όλων των επεξεργαστών στοιχείων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>Προ&βολή όλων των επεξεργαστών στοιχείων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>Α&πόκρυψη όλων των επεξεργαστών πινακίδων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>Ε&μφάνιση όλων των επεξεργαστών πινακίδων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Νέος επεξεργαστής διαγραμμάτων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Νέος επεξεργαστής στοιχείου</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Κλείσιμο του QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Ελαχιστοποιεί το QElectroTech στο πλαίσιο συστήματος</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Επαναφορά του QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Επεξεργαστές διαγραμμάτων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Επεξεργαστές στοιχείων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Επεξεργαστές πινακίδων</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Βρέθηκε το παρακάτω αρχείο επαναφοράς,<br>Θέλεις να ανοιχτεί;</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Βρέθηκαν τα παρακάτω αρχεία επαναφοράς,<br>Θέλεις να ανοιχτούν;</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Αρχεία επαναφοράς</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Χρήση: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6867,7 +7205,7 @@ Options disponibles : --license προβολή της άδειας χρήσης</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6876,40 +7214,40 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Ρύθμιση του QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=ΚΑΤΑΛΟΓΟΣ Προσδιορίστε τον κατάλογο της συλλογής στοιχείων </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-elements-dir=ΚΑΤΑΛΟΓΟΣ Προσδιορίστε τον κατάλογο της συλλογής πινακίδων </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=ΚΑΤΑΛΟΓΟΣ Προσδιορίστε τον κατάλογο των ρυθμίσεων </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=ΚΑΤΑΛΟΓΟΣ Προσδιορίστε τον κατάλογο των αρχείων γλώσσας</translation> @@ -6963,25 +7301,25 @@ Options disponibles : <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Φόρτωση...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Φόρτωση ... Εικονίδιο πλαισίου συστήματος</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -6990,535 +7328,545 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Προβο&λή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Εμφανίζει (ή όχι) το πλαίσιο στοιχείων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Προσθήκη στήλης</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Κλιμάκωση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>Επι&κόλληση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Αντι&γραφή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Α&ποκοπή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Αποεπιλογή όλων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>Ε&πεξεργασία</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Απομάκρυνση στήλης</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Αποθήκευση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Αποθήκευση ως</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>Ε&ξαγωγή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Παρά&θυρα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Κλείσιμο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Αρχείο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Εκτύπωση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Αντιστροφή της επιλογής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Κατάσταση Λειτουργίας Επιλογής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Κατάσταση Λειτουργίας Προβολής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Μωσαϊκό</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Νέο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Εργαλεία</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>Άν&οιγμα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Άνοιγμα αρχείου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Επαναφορά της εστίασης</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Περιστροφή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Τερματισμός</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Διαγραφή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Επιλογή Όλων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Εστίαση ώστε να χωράει</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Αποεστίαση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Εστίαση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Αναίρεση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Επαναφορά</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Επαναφορά των αγωγών</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Προβολή ή απόκρυψη της κύριας γραμμής εργαλείων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Προβολή ή απόκρυψη της γραμμής εργαλείων Προβολής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Προβολή ή απόκρυψη της γραμμής εργαλείων Διαγραμμάτων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Προβολή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Διάγραμμα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Προσθήκη πεδίου κειμένου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Καμία αλλαγή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Προβολή ή απόκρυψη του καταλόγου αναιρέσεων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Επεξεργασία του επιλεγμένου αντικειμένου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Έναρξη του προσθέτου δημιουργίας ακροδεκτών</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Ομαδοποίηση επιλεγμένων κειμένων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Περιστροφή των επιλεγμένων στοιχείων και των επιλεγμένων κειμένων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Περιστροφή των επιλεγμένων κειμένων κατά μία συγκεκριμένη γωνία</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Αναζήτηση / Αντικατάσταση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>Έρ&γο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>Προσφάτως ανοιγμένα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Το έργο %1 αποθηκεύτηκε στον κατάλογο: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Το αρχείο, το όποιο προσπαθείτε να ανοίξετε, δεν φαίνεται να είναι αναγνώσιμο και δεν μπορεί να ανοιχτεί. Παρακαλώ, ελέγξτε τα δικαιώματα του αρχείου.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Το έργο, το οποίο προσπαθείτε να ανοίξετε, δεν φαίνεται να είναι εγγράψιμο. Θα ανοιχτεί μόνο για ανάγνωση.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>χρήση καρτελών</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>χρήση παραθύρων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Προβολή των έργων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Ιδιότητες του έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Καθαρισμός του έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Αδυναμία ανοίγματος του έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Το αρχείο %1 δεν δείχνει να είναι αρχείο έργου QElectroTech. Κατά συνέπεια, δεν μπορεί να ανοιχτεί.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Αναιρέσεις</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Επιλέξτε μια ενέργεια για να επαναφέρετε τις αλλαγές που κάνατε στο διάγραμμα σας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Προσανατολισμός των κειμένων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Εύρεση στο πλαίσιο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Προσθήκη εικόνας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Προσθήκη περίληψης</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Εστίαση στο περιεχόμενο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Κλείνει το QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Αναιρεί την προηγούμενη πράξη</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Επαναφέρει την προηγούμενη αναίρεση</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Τοποθετεί τα επιλεγμένα στοιχεία στο πρόχειρο αντιγραφής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Αντιγράφει τα επιλεγμένα στοιχεία</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Αποεπιλέγει όσα στοιχεία είναι επιλεγμένα, και επιλέγει όσα δεν ήταν επιλεγμένα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Εύρεση του επιλεγμένου στοιχείου στον πίνακα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Επαναφορά της διαδρομής των αγωγών, αγνοώντας τις αλλαγές του χρήστη</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Αυτόματη δημιουργία αγωγών</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Έργα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Συλλογές</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Χρήση της αυτόματης δημιουργίας αγωγών όταν αυτό είναι δυνατόν</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Επαναφέρει το προκαθορισμένο μέγεθος εστίασης</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Εμφανίζει τα διάφορα ανοιγμένα έργα, σε παράθυρα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Προσθήκη ονοματολογίας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Εμφανίζει τα διάφορα ανοιγμένα έργα, σε καρτέλες</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Επιτρέπει την επιλογή στοιχείων</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Προσθέτει ένα πεδίο κειμένου στην τρέχουσα σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Προσθήκη εικόνας στην τρέχουσα σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Προσθήκη γραμμής στην τρέχουσα σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Προσθήκη ορθογώνιου στην τρέχουσα σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Προσθήκη έλλειψης στην τρέχουσα σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Προσθήκη πολυγραμμής στην τρέχουσα σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Προσθήκη</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7527,7 +7875,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7536,487 +7884,483 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Διπλό κλικ για τελείωμα του σχήματος, Δεξί κλικ για ακύρωση του τελευταίου σημείου</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Επεξεργασία του στοιχείου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Επεξεργασία του πεδίου κειμένου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Επεξεργασία εικόνας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Επεξεργασία αγωγού</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Επεξεργασία του επιλεγμένου αντικειμένου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Παρουσιάστηκε σφάλμα κατά το άνοιγμα του αρχείου %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Ενεργοποιεί το έργο « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Σφάλμα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Διαρρυθμίζει τα παράθυρα σαν πλακίδια</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Διαρρύθμιση των παραθύρων σε κλιμακωτή διάταξη</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Επόμενο έργο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Αυτό το παράθυρο εμφανίζει τις διάφορες δράσεις που γίνονται στην τρέχουσα σελίδα. Πατήστε σε μια δράση για να επιστρέψετε στην κατάσταση της σελίδας αμέσως μετά την εφαρμογή.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Εξαγωγή ως pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Εξάγει μία ή περισσότερες σελίδες του τρέχοντος έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Χρώμα παρασκηνίου λευκό/γκρι</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Εμφανίζει το χρώμα παρασκηνίου της σελίδας σε λευκό ή γκρι</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Εμφάνιση του δικτυώματος</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Εμφάνιση ή απόκρυψη του δικτυώματος της σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Ιδιότητες σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Προσθήκη σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Διαγραφή σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Εξαγωγή ως CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Διαχειριστής ακροδεκτών (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Εξαγωγή της λίστας των ονομάτων των αγωγών</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Εξαγωγή της εσωτερικής βάσης δεδομένων έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Προηγούμενο έργο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Δημιουργία νέου έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Άνοιγμα υπάρχοντος έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Κλείσιμο τρέχοντος έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Αποθήκευση τρέχοντος έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Αποθήκευση του τρέχοντος έργου με διαφορετικό όνομα αρχείου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Προσθήκη γραμμής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Αφαίρεση γραμμής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Προσθήκη στήλης στη σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Απομάκρυνση στήλης από τη σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Επεκτείνει το ύψος της σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Συρρικνώνει το ύψος της σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Διαγράφει τα επιλεγμένα στοιχεία από τη σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Επιλέγει όλα τα στοιχεία τις σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Αποεπιλέγει όλα τα στοιχεία τις σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Επεκτείνει τη σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Συρρικνώνει τη σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Προσαρμογή της εστίασης έτσι ώστε να εμφανιστούν όλα τα περιεχόμενα της σελίδας ανεξάρτητα από το πλαίσιο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Προσαρμογή της εστίασης στο μέγεθος του πλαισίου της σελίδας</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Προσθήκη γραμμής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Προσθήκη παραλληλόγραμμου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Προσθήκη έλλειψης</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Προσθήκη πολυγραμμής</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Εξάγει την τρέχουσα σελίδα σε διαφορετική μορφή</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Εκτυπώνει μία ή περισσότερες σελίδες του τρέχοντος έργου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Βάθος</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Ομάδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Επικολλάει τα περιεχόμενα του προχείρου στη σελίδα</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Επεξεργαστείτε τις ιδιότητες της σελίδας (διαστάσεις, πληροφορίες πινακίδας, ιδιότητες αγωγών...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Επιτρέπει την προβολή της σελίδας χωρίς να είναι δυνατή η μετατροπή της</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Ενεργοποιεί το επόμενο έργο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Ενεργοποιεί το προηγούμενο έργο</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Έργα QElectroTech (*.qet);;Αρχεία XML (*.xml);;Όλα τα αρχεία (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Αδυναμία ανοίγματος του αρχείου</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Φαίνεται ότι το αρχείο 1% που προσπαθείτε να ανοίξετε δεν υπάρχει.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Άνοιγμα του αρχείου μόνο για ανάγνωση</translation> @@ -8220,53 +8564,53 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Προσθήκη γραμμής</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Προσθήκη έλλειψης</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Προσθήκη πολυγώνου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Προσθήκη κειμένου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Προσθήκη τόξου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Προσθήκη ακροδέκτη</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Αναίρεση</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Επαναφορά</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Λόγω απουσίας ακροδέκτη, το στοιχείο δεν θα μπορεί να συνδεθεί με άλλα στοιχεία μέσω αγωγών.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Καμία αλλαγή</translation> </message> @@ -8311,13 +8655,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Επεξεργασία των πληροφοριών του συγγραφέα</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Τμήματα</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Βάθος</translation> @@ -8333,12 +8677,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Επεξεργασία των ιδιοτήτων του στοιχείου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Προσθήκη πεδίου δυναμικού κειμένου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Διπλό κλικ για τελείωμα του σχήματος, Δεξί κλικ για ακύρωση του τελευταίου σημείου</translation> </message> @@ -8363,26 +8707,26 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Επικόλληση από ...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Αλλαγμένο]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Μόνο για ανάγνωση]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Επεξεργαστής στοιχείων</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n επιλεγμένο τμήμα.</numerusform> @@ -8390,24 +8734,24 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Απουσία ακροδέκτη</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Σφάλμα</b> :<br>Οι αναφορές σελίδας πρέπει να έχουν ένα μοναδικό ακροδέκτη.<br><b>Λύση</b> :<br>Βεβαιωθείτε ότι το στοιχείο έχει ένα μοναδικό ακροδέκτη</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Ο έλεγχος του στοιχείου επέστρεψε</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8416,32 +8760,32 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> και</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Σφάλματα</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Απουσία ακροδέκτη</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Προσθήκη μη επεξεργάσιμου κειμένου στοιχείου στα διαγράμματα</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Προσθήκη επεξεργάσιμου κειμένου στοιχείου στα διαγράμματα</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8450,13 +8794,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Δεν υπάρχει το αρχείο %1.</translation> @@ -8468,254 +8812,254 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Προβολή</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Αδυναμία ανοίγματος του αρχείου %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Αυτό το αρχείο δεν είναι ένα έγκυρο έγγραφο XML</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Σφάλμα</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Έκδοση μόνο για ανάγνωση</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Δεν επιτρέπεται η μετατροπή αυτού του στοιχείου. Γι αυτό θα ανοιχτεί μόνο για ανάγνωση.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Σφάλμα</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Αδυναμία εγγραφής σε αυτό το αρχείο</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Αδυναμία αποθήκευσης του στοιχείου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Προειδοποίηση</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Η εισαγωγή ενός μεγάλου dxf μπορεί να πάρει χρόνο περιμένετε κατά την εισαγωγή...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">Στοιχεία του QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Αδυναμία ανοίγματος του αρχείου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Φαίνεται ότι το αρχείο %1 που προσπαθείτε να ανοίξετε δεν υπάρχει.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Αποτυχία αποθήκευσης</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Η αποθήκευση απέτυχε, οι συνθήκες δεν είναι έγκυρες</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Άνοιγμα αρχείου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Στοιχεία του QElectroTech (*.elmt);;Αρχεία XML (*.xml);;Όλα τα αρχεία (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Επαναφόρτωση του στοιχείου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Προειδοποιήσεις</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Αυτό το στοιχείο έχει αλλαχθεί, μετά από την τελευταία αποθήκευσή του. Αν το επαναφορτώσετε, αυτές οι αλλαγές θα χαθούν. Θέλετε πραγματικά να επαναφορτωθεί αυτό το στοιχείο;</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Αποθήκευση ως</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Στοιχεία του QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Αποθήκευση του παρόντος διαγράμματος;</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Θέλεις να γίνει αποθήκευση του στοιχείου %1;</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Μη υπαρκτό στοιχείο.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Το στοιχείο δεν υπάρχει.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Η επιλεγμένη εικονική διαδρομή δεν ταιριάζει σε κάποιο στοιχείο.</translation> @@ -8736,7 +9080,7 @@ les conditions requises ne sont pas valides</source> <translation>Επι&κόλληση</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Προσθήκη παραλληλόγραμμου</translation> </message> @@ -8883,54 +9227,54 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Παρουσιάστηκε σφάλμα κατά την ενσωμάτωση του προτύπου.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Προειδοποίηση</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Έργο « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Έργο %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Ανώνυμο έργο</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [μόνο-για-ανάγνωση]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [Αλλαγμένο]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8938,44 +9282,44 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Προειδοποίηση</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Άνοιγμα του έργου...</b><br/>Δημιουργία των σελίδων</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Άνοιγμα του τρέχοντος έργου ...</b><br/>Εφαρμογή των παραπομπών</p></translation> </message> @@ -9013,127 +9357,126 @@ Que désirez vous faire ?</source> <translation>Για να αναπαραγάγετε αυτό το πρότυπο, εισάγετε το επιθυμητό όνομα για το αντίγραφο</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Νέο</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>Άν&οιγμα</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Άνοιγμα από ένα αρχείο</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Αποθήκευση</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Αποθήκευση ως</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Αποθήκευση σε αρχείο</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Τερματισμός</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Α&ποκοπή</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>Αντι&γραφή</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>Επι&κόλληση</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Διαχείριση λογότυπων</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>μετατροπή των πρόσθετων πληροφοριών</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Μεγέθυνση</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Σμίκρυνση</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Ταιριαστή προβολή</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Επαναφορά της εστίασης</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Προσθήκη γραμμής</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Προσθήκη στήλης</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>Συγχώνευση κελιών</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>Διαίρεση κελιών</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9152,156 +9495,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Αρχείο</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>Ε&πεξεργασία</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>Προβο&λή</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Εργαλεία</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Επεξεργασία</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Προβολή</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Καμία αλλαγή</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Αναιρέσεις</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Ιδιότητες του κελιού</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Αλλαγμένο]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Μόνο για ανάγνωση]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Επεξεργαστής προτύπου πινακίδας</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Σφάλμα</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Άνοιγμα ενός προτύπου</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Άνοιγμα ενός αρχείου</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Πρότυπα πινακίδων του QElectroTech (*%1);;Αρχεία XML (*.xml);;Όλα τα αρχεία (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Αποθήκευση προτύπου ως</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Αποθήκευση ως</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Πρότυπα πινακίδων QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Επεξεργασία των πρόσθετων πληροφοριών</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Μπορείτε να ορίσετε σε αυτό το πεδίο, τον συγγραφέα αυτής της πινακίδας, την άδεια χρήσης, ή όποια άλλη πληροφορία θεωρείτε χρήσιμη.</translation> </message> @@ -9879,18 +10223,18 @@ Que désirez vous faire ?</source> <translation>Ιδιότητες του έργου</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Επιλογή εικόνας...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Αρχεία εικόνων (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9899,7 +10243,7 @@ Que désirez vous faire ?</source> <translation>Σφάλμα</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Αδυναμία φόρτωσης της εικόνας</translation> </message> @@ -10334,24 +10678,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Τύπος</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Σχόλιο</translation> @@ -10359,16 +10703,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10665,22 +11009,22 @@ Voulez-vous la remplacer ?</source> <translation>Δημιουργία αγωγών</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Για να εγκαταστήσετε το πρόσθετο qet_tb_generator<br>Επισκεφθείτε το:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'> qet-tb-generator</a><br> Απαιτεί python 3.5 ή παραπάνω <br> <B> <U> Πρώτη εγκατάσταση στα Windows </B> </U> <br> 1. Εγκατάσταση, εάν απαιτείται, python 3.5 ή παραπάνω <br> Επισκεφθείτε το: <br> <a href='https://www.python.org/downloads/'> python.org </a> <br> 2. pip install qet_tb_generator <br> <B> <U> Ενημέρωση στα Windows </B> </U> <br> python -m pip install --upgrade qet_tb_generator <br>>> Ο χρήστης θα μπορούσε να ξεκινήσει σε ένα τερματικό αυτό το σενάριο σε αυτό τον κατάλογο <br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Για να εγκαταστήσετε το πρόσθετο qet_tb_generator<br>Επισκεφθείτε το:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'> qet-tb-generator</a><br><br> Απαιτεί python 3.5 ή παραπάνω <br><br> <B> <U> Πρώτη εγκατάσταση στο Linux </B> </U> <br> 1. ελέγχτε αν έχετε εγκατεστημένο το pip3: pip3 --version<br>αν οχι, εγκαταστήστε το με: sudo apt-get install python3-pip<br>2. Εγκαταστήστε την εφαρμογή: sudo pip3 install qet_tb_generator<br>3. Εκκινήστε την εφαρμογή: qet_tb_generator<br><br><B><U> Αναβάθμιση σε Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Σφάλμα εκκίνησης του προσθέτου qet_tb_generator</translation> </message> @@ -10708,7 +11052,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>Αυτό είναι ένα σφάλμα στον κώδικα</translation> @@ -10918,7 +11262,7 @@ Voulez-vous la remplacer ?</source> <translation>Άνοιγμα ενός στοιχείου</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Εισαγωγή ενος αρχείου dxf</translation> </message> @@ -11082,6 +11426,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11126,55 +11475,306 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>σχήμα</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>γραμμής</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Προσθήκη σημείου</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Διαγραφή του σημείου</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Μέγεθος</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Προσθήκη σημείου σε πολύγωνο</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Διαγραφή σημείου από πολύγωνο</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Επεξεργασία %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>ορθογώνιου</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>έλειψης</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>πολυγραμμής</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12087,150 +12687,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>Φόρμα</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Γραμμή</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Πάχος</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Απλή</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Διακεκομμένη</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Στίγματα</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Παύλες και τελείες</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Παύλα τελεία τελεία</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Προσαρμοσμένη διακεκομμένη</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Τύπος</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Χρώμα</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Γέμισμα</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Τεχνοτροπία</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Κανένα</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Πλάτος</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Συμπαγής</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Πυκνότητα 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Πυκνότητα 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Πυκνότητα 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Πυκνότητα 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Πυκνότητα 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Πυκνότητα 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Πυκνότητα 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Οριζόντια</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Κάθετα</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Σταυρός</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Διαγώνια πίσω</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Διαγώνια εμπρός</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Διαγώνια σταυρωτά</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Κλείδωμα της θέσης</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Κλειστό πολύγωνο</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12239,30 +12866,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Επεξεργασία της γραμμής μιας φόρμας</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Επεξεργασία του γεμίσματος μιας φόρμας</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Κλείσιμο του πολυγώνου</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Τροποποιήστε μια απλή φόρμα</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Τροποποιήστε τις ιδιότητες μιας απλής φόρμας</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_en.ts b/lang/qet_en.ts index fa046fee0..62c0037ae 100644 --- a/lang/qet_en.ts +++ b/lang/qet_en.ts @@ -586,7 +586,7 @@ <translation>Form</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Project Status:</translation> </message> @@ -621,54 +621,54 @@ <translation>To</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Update Policy</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Conductor</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Only New</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Both</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Disable</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Element</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Only Existent</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Folio</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Existent</translation> </message> @@ -847,6 +847,14 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <translation>Dimensions of folio</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <translation>insert %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>image</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Select an image ...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Error</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Unable to load the image.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1471,40 +1683,40 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <translation>Create a template</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Connect the selected terminals</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Untitled</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation>Registered template</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation>The template has been successfully saved as : %1</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation>Error</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation>The file could not be written.</translation> </message> @@ -2044,7 +2256,7 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation>Automatically number an element</translation> @@ -2655,101 +2867,106 @@ The element's display name is edited separately in the element properties.< <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>General</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Element </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Name : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Folio : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Type: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Sub-type : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Position : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotation : %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Dimensions : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Terminals : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation>Maximum number of slave contacts defined: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation>Number of slave contacts used : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Location : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Lock Position</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Find in the panel</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Edit element</translation> </message> @@ -4553,7 +4770,7 @@ Any setting other than “No rounding” may cause rendering errors in the proje <translation>This is a title block template, which can be applied to a folio.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [unused in the project]</translation> </message> @@ -4784,6 +5001,29 @@ Any setting other than “No rounding” may cause rendering errors in the proje <translation>Vertical</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished">Reset</translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4793,23 +5033,121 @@ Any setting other than “No rounding” may cause rendering errors in the proje </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Width</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Height</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Lock Position</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Image size</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Resizing an image</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Preview</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6580,118 +6918,118 @@ The following variables are incompatible: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Delete unused elements in the project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Delete empty categories</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>The project was modified. Do you want to save changes?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>untitled</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Project QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Delete this folio ?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation>Are you sure you want to delete this folio from the project?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Read-only project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>This project is read-only. Thus it can not be cleaned.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>delete unused templates in the project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Clean project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Add a folio</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Go back to the start of the project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Go to the end of the project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation>go one page left</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation>go one page right</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>This project does not contain any folio</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Save as</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>no active project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Opening the project ...</b><br/>Creating folio tabs :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Project</translation> @@ -6732,137 +7070,137 @@ Do you want to save changes?</translation> <translation>User title blocks</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Quit</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Hide</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Show</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Hide diagram editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Show diagram editors</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Hide element editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Show element editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Hide title block template editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Show title block template editors</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&New diagram editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&New element editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Closes QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Reduces QElectroTech into the systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Restore QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Diagram editors</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Element editors</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Title block template editors</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>The following restore file has been found,<br>Do you want to open it ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>The following restore files have been found,<br>Do you want to open them ?</b> <br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Restore file</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation>Crash report</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation>QElectroTech did not close correctly the last time it was run. Here are the last messages logged before it closed — you can save them to include them in a bug report.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation>Diagnostic report</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation>This contains the latest log entries for this session. Please check the contents before attaching it to a public bug report.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Usage: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6879,7 +7217,7 @@ Available options: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6888,35 +7226,35 @@ Available options: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Define the elements collection directory </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Define the title block templates collection directory </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Define configuration directory </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR Define data directory </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Define the language files directory @@ -6971,31 +7309,31 @@ Available options: <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Configure QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Loading...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Loading... Systray icon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -7004,887 +7342,898 @@ Available options: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Displ&ay</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Show or hide the elements panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Add a column</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Cascade</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Paste</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Copy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Cu&t</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Select none</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Edit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Remove a column</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Save</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Save as</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Export</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Wi&ndows</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Close</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&File</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Print</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Invert selection</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Select</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>This panel lists the various changes applied to the current folio. Clicking a change gets the folio back to its state right after it was applied.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Background color white / gray</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Displays the background color of the folio in white or gray</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Display the grid</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Display or hide the grid of folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Folio properties</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Add a folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Delete this folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Move</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Tile</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation>Diagram editors</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Export in pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Export one or more folios of the current project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation>View the guides</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation>Shows or hides the guides</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Export to CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Terminal block manager (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Launch the terminal block creation plugin</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Export the list of names of wires</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation>Export the wiring diagram</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation>Automatic numbering of terminals</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Export the internal project database</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&New</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Creates a new project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Opens an existing project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Closes the current project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Saves the current project and all its folios</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Saves the current project with a different file name</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Add row</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Remove a row</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Add a column to the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Remove a column from the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Expands the folio height</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Shrinks the folio height</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Removes selected elements from the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Selects all elements on the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Deselect all elements on the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Expand the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Shrinks the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Adjusts the zoom to display all the contents of folio regardless of context</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Adjusts the zoom on exactly the part of the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Add line</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Add a rectangle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Add an ellipse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Add a polygon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Exports the current folio to another format</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Prints one or more folio of the current project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Depth</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Group</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Pastes elements from the clipboard into the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Edits the properties of the folio (size, title block informations, conductor properties...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Allows to view the folio without modifying it</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Tools</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Open</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Open a file</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Reset zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Rotate</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Quit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Delete</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Select All</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Fit in view</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Zoom Out</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Zoom In</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Undo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Redo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Reset conductors</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Display or hide the main toolbar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Display or hide the Display toolbar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Display or hide the Diagram toolbar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Display</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Diagram</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Add a textfield</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>No modification</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Display or hide the undo list</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Edit the selected item</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Group selected texts</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Rotate selected elements and texts</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Rotate selected texts to a specific angle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Search / Replace</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Latest files</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Project %1 registered in the directory: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>The file you try to open does not seem readable and can not be opened. Please check the file permissions.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>The project you try to open does not seem writable. It will be opened read-only.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>using tabs</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>using windows</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Display projects</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Project properties</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Clean project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Unable to open project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>The file %1 does not appear to be a QElectroTech project file. Thus it cannot be opened.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Undo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Click an action to get back in the changes you made to your diagram</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Choose texts orientation</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Find in the panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Add a picture</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Add a summary</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Zoom content</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Closes QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Undoes the previous action</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Restores the undone action</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Puts selected elements into the clipboard</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Copies selected elements</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Inverts selection of elements</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Find the selected item in the panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Reset the conductors path ignoring the user changes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Automatic creation conductor (s)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projects</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Collections</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Using the automatic creation of conductor (s) when possible</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Restores default zoom level</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Shows the various opened projects in windows</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation>Automatic disconnection of conductor(s)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation>Automatically cut existing conductors when placing an element</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Add a nomenclature</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Shows the various opened projects in tabs</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Allows to select elements</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation>Rotate the group</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation>Rotates the selection as a group around its centre, rather than each element in place</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation>Add a PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Add a terminal plan</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Adds a text field to the current folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Add an image to the current folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation>Adds a PDF page to the current folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Add a line to the current folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Adds a rectangle on the current folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Add an ellipse to the current folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Adds a polyline to the current folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Add a terminal plan on the current sheet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation>Navigate to an element</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation>Quickly search for and select an element in the folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Add</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech project(*.qet);;XML Files (*.xml);;All files (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Unable to open file</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>It appears the %1 file which you are trying to open does not exist or does not exist anymore.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Opening the file read-only</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation> @@ -7893,7 +8242,7 @@ Available options: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation> @@ -7902,136 +8251,131 @@ Available options: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation>Project fonts</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Double-click to finish the shape, Right click to cancel the last point</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation>Unable to delete the terminal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation>The deletion cannot be performed because the selection contains one or more terminals that are bridged and/or belong to a multi-level terminal. Unbridge and/or remove the levels from the affected terminals so that they can be deleted</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Edit the element</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Edit the text field</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Edit the image</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Edit conductor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Edit the selected object</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>An error occurred while opening file %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Activates the project « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation>Are you sure you want to delete this folio?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation>Delete the folios</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation>Are you sure you want to delete the selected %1 folios ?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation>Delete %1 folios</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation>Move the folios</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Arranges windows in a tile pattern</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Arranges windows in a cascade pattern</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Next project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Previous project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Activates the next project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Activates the previous project</translation> @@ -8235,53 +8579,53 @@ Unbridge and/or remove the levels from the affected terminals so that they can b <translation>Import an element to resize</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Add a line</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Add an ellipse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Add a polygon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Add text</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Add an arc</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Add a terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Undo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Redo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Without terminal, the element can not be connected to other elements via conductors.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>No modification</translation> </message> @@ -8326,13 +8670,13 @@ Unbridge and/or remove the levels from the affected terminals so that they can b <translation>Edit author information</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Parts</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Depth</translation> @@ -8348,12 +8692,12 @@ Unbridge and/or remove the levels from the affected terminals so that they can b <translation>Edit element properties</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Add a dynamic text field</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Double-click to finish the shape, Right click to cancel the last point</translation> </message> @@ -8378,26 +8722,26 @@ Unbridge and/or remove the levels from the affected terminals so that they can b <translation>Paste from...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Changed]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Read only]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Elements Editor</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n selected part.</numerusform> @@ -8405,29 +8749,29 @@ Unbridge and/or remove the levels from the affected terminals so that they can b </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Too many primitives, list not generated: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Missing terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br> <b> Error </ b>: <br> folio referencings must have a single terminal <br> <b> Solution </ b> :<br> Check that the element has only one terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>The verification of this element generated</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8436,32 +8780,32 @@ Unbridge and/or remove the levels from the affected terminals so that they can b </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> and</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Errors</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Missing terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Add non-editable element text in diagrams</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Add element text that can be edited in diagrams</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8470,13 +8814,13 @@ Unbridge and/or remove the levels from the affected terminals so that they can b </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>The file %1 does not exist.</translation> @@ -8488,249 +8832,249 @@ Unbridge and/or remove the levels from the affected terminals so that they can b <translation>Display</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Unable to open the file %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>This file is not a valid XML document</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Read only edition</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>You are not allowed to modify this element. Thus it will be edited read-only.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Unable to write to this file</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Unable to save the element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation>Incorrect number of terminals</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation><br><b>Error</b>:<br>Conductor definitions can only have one terminal.<br><b>Solution</b>:<br>Verify that the element has only one terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation>Element editors</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation>Export as SVG</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation>SVG image (*.svg)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation>Export failed</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation>Unable to write to the file « %1 ».</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Warning</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Importing a large dxf can take time please wait while importing...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Import an element to resize</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>QElectroTech elements (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Unable to open file</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>It appears the %1 file which you are trying to open does not exist or does not exist anymore.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Registration failed</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>The recording failed, the conditions are not valid</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Open a file</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech elements (*.elmt);;XML files (*.xml);;All files (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Reload element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Warnings</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>This element has been modified since last save. If you reload it, these changes will be lost. Do you really want to reload this element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Save as</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech elements (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Save current element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Do you wish to save the element %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Non-existent element.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>The element does not exist.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>The chosen virtual path does not match an element.</translation> @@ -8751,7 +9095,7 @@ the conditions are not valid</translation> <translation>&Paste</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Add a rectangle</translation> </message> @@ -8898,48 +9242,48 @@ the conditions are not valid</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Warning</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Project « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Project %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Untitled project</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [read-only]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [modified]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation>Modified contact system</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8950,13 +9294,13 @@ Existing slave elements will not be automatically assigned. You will need to lin Do you wish to continue?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>An error occurred during the template integration.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8965,7 +9309,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> You are currently using QElectroTech in version %2</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8974,32 +9318,32 @@ Que désirez vous faire ?</source> What do you wish to do ?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>The project you are trying to open is partially compatible with your version %1 of QElectroTech. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>In order to make it fully compatible please open this same project with version 0.8, or 0.80 of QElectroTech and save the project and open it again with this version. What do you wish to do ?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Warning </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Opening the project ...</b><br/>Creation of folios</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Opening the project ...</b><br/>Setting up cross references</p></translation> </message> @@ -9037,139 +9381,138 @@ What do you wish to do ?</translation> <translation>In order to duplicate this template, please enter a name for its copy</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&New</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Open</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Open from a file</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Save</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Save as</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Save to a file</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Quit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Manage logos</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Zoom In</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Zoom out</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Fit in view</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Reset zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Save as</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech title block templates (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Merge cells</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Cu&t</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Copy</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Paste</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Edit extra information</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Add a &row</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Add a &column</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Split cells</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9188,144 +9531,145 @@ What do you wish to do ?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation>Title block template editors</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&File</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Edit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>Displ&ay</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Tools</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Edit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Display</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>No modification</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Undo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Cell properties</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Changed]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Read only]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Title block template editor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation>Unable to save the template ‘%1’.</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Open a title block template</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Open a file</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech title block templates (*%1);;XML files (*.xml);; All files (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Save template as</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation>The name ‘%1’ is invalid: it must not contain the following characters: \ / : * ? " < > |</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Edit extra information</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>You can use this field to specify the authors of this template, its license, or any other information you may find useful.</translation> </message> @@ -9903,18 +10247,18 @@ What do you wish to do ?</translation> <translation>Project properties</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Select an image ...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9923,7 +10267,7 @@ What do you wish to do ?</translation> <translation>Error</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Unable to load the image.</translation> </message> @@ -10359,24 +10703,24 @@ Do you want to replace it ?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation>Type</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation>Address</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Annotation</translation> @@ -10384,16 +10728,16 @@ Do you want to replace it ?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation>Cross-reference</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10690,22 +11034,22 @@ Do you want to replace it ?</translation> <translation>Creation of conductors</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Error launching qet_tb_generator plugin</translation> </message> @@ -10949,7 +11293,7 @@ Do you want to replace it ?</translation> <translation>Open an item</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Import a dxf file</translation> </message> @@ -10967,7 +11311,7 @@ Do you want to replace it ?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>this is an error in the code</translation> @@ -11111,6 +11455,11 @@ Please download it by following the link and unzip it in the installation folder <source>Impossible de rendre la page PDF.</source> <translation>Unable to render the PDF page.</translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11157,55 +11506,306 @@ Please add a new table or adjust the existing table to display all information.< <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>an shape</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>a line</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Add a point</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Delete this point</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Size</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Add a point to a polygon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Delete a point from a polygon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Edit %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>rectangle</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>an ellipse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>polyline</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12135,150 +12735,177 @@ The other fields are not used.</translation> <translation>Form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Line</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Thickness</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Dashed</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Dotted</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Dots and dashes</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Dash dot dot</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Custom Dash Line</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Type</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Color</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Filling</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Style</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>None</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Width</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Height</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Solid line</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Dense 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Dense 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Dense 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Dense 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Dense 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Dense 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Dense 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Cross</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>BDiag</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>FDiag</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>CrossDiag</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Lock Position</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Closed polygon</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12287,30 +12914,60 @@ The other fields are not used.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Edit line of a form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Edit filling a form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Close the polygon</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Modify a simple form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Modify the properties of a simple form</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_es.ts b/lang/qet_es.ts index 4382fcaf6..b1acbc553 100644 --- a/lang/qet_es.ts +++ b/lang/qet_es.ts @@ -586,7 +586,7 @@ <translation>Formulario</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Estado del Proyecto:</translation> </message> @@ -621,54 +621,54 @@ <translation>A</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Política de Actualización</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Conductor</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Solo Nuevo</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Ambos</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Desactivar</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Elemento</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Solo Existente</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Folio</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Existente</translation> </message> @@ -846,6 +846,14 @@ Nota: Estas opciones NO permiten o bloquean las Numeraciones automáticas, solo <translation>Tamaño del folio</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1414,13 +1422,217 @@ Nota: Estas opciones NO permiten o bloquean las Numeraciones automáticas, solo <translation>Añadir %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>una imagen</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Seleccione una imagen ...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Error</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Imposible cargar la imagen.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1471,39 +1683,39 @@ Nota: Estas opciones NO permiten o bloquean las Numeraciones automáticas, solo <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 T: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Conectar los terminales seleccionados</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Sin titulo</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Error</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2045,7 +2257,7 @@ Nota: Estas opciones NO permiten o bloquean las Numeraciones automáticas, solo <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2659,99 +2871,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>General</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Elemento </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Nombre : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Folio : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Tipo : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Subtipo:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Posición : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotación : %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Tamaño : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Bornes : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Ubicación : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Bloquear la posición</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Encuentra en el panel</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Edita el elemento</translation> </message> @@ -4557,7 +4774,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Este es un modelo de rótulo de QElectroTech, que se puede aplicar a una hoja.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [No se utiliza en el proyecto]</translation> </message> @@ -4788,6 +5005,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Vertical</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4797,23 +5037,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Anchura</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Bloquear la posición</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Tamaño de la imagen</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Editar el tamaño de una imagen</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Vista previa</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6584,118 +6922,118 @@ Las siguientes variables son incompatibles; <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Elimina los elementos no usados en el proyecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Elimina las categorías vacias</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>El proyecto ha sido modificado. ¿Quiere guardar los cambios?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>Sin nombre</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Proyecto QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>¿Eliminar el folio?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Proyecto en sólo lectura</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Este proyecto es en sólo lectura. Por eso es imposible limpiarlo.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Eliminar los rótulos no usados en el proyecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Limpia el proyecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Añadir un folio</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Volver al inicio del proyecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Ir al final del proyecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>El proyecto no contiene ningún folio</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Guarda como</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>Ningún proyecto nuevo</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Apertura del proyecto en curso...</b><br/>Creando pestañas de folio :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Proyecto</translation> @@ -6736,136 +7074,136 @@ Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished">Rótulos de usuario</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Salir</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Esconder</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Restaurar</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Esconder todos los editores de esquema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Restaura todos los editores de esquema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Esconder todos los editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Restaura todos los editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Esconder los editores de rótulos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Restaura los editores de rótulos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Nuevo editor de esquema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Nuevo editor de elemento</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Cierre el programa QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimiza QElectroTech a la bandeja del sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Restaura QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Editores de esquemas</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Editores de rótulos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Se ha encontrado el siguiente archivo de restauración,<br>¿deseas abrirlo?</br><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Se encontraron los siguientes archivos de restauración,<br>¿deseas abrirlos?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Archivo de restauración</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Uso : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6874,7 +7212,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6891,34 +7229,34 @@ Opciones disponibles: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Definir la carpeta de la colección de elementos </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Definir la carpeta de la colección de elementos </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Definir la carpeta de configuración </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Definir la carpeta con los archivos de idioma @@ -6973,31 +7311,31 @@ Opciones disponibles: <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Configurar QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Cargando...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Cargando.... icono de la bandeja del sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -7006,391 +7344,402 @@ Opciones disponibles: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Ninguna modificación</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nuevo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Abrir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Cerrar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Guardar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Guardar como</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&xportar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Este panel muestra las diferentes acciones realizadas en el folio actual. Haga clic en una acción para volver al estado del folio justo después de la acción.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Imprimir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished">Exportar a PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Salir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Deshacer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Rehacer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>C&ortar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Copiar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Pegar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Color de fondo blanco / gris</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Muestra el color de fondo de la hoja en blanco o gris</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Mostrar cuadrícula</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Muestra u oculta la cuadrícula</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Propiedades del folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Añadir un folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Eliminar el folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Crear un nuevo proyecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Abrir un proyecto existente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Cerrar el proyecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Guardar el proyecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Guardar el proyecto con otro nombre de archivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Añadir una fila</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Eliminar una fila</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Añadir una columna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Eliminar una columna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Aumentar el tamaño vertical del folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Disminuir el tamaño vertical del folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Eliminar los elementos seleccionados</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Seleccionar todo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Deseleccionar todo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Invertir la selección</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Agrega un campo de texto en el folio actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Agregar una imagen en el folio actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Añadir una línea al folio actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Añadir un rectangulo al folio actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Agregar una elipse al folio actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Agregar una polilínea al folio actual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Profundidad</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7399,7 +7748,7 @@ Opciones disponibles: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7408,632 +7757,627 @@ Opciones disponibles: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Doble clic para terminar la forma, Clic derecho para cancelar el último punto</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Grupo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Se produjo un error al abrir el archivo %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Eliminar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Girar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Editar el elemento seleccionado</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Reiniciar los conductores</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Añadir un campo de texto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Añadir una columna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Eliminar una columna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Propiedades del proyecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Ampliar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Reducir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Ajustar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>utilizando pestañas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>utilizando ventanas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Modo selección</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Modo visualización</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Haga clic en una acción para volver atras en la edición de su esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Encontrar en el panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Añadir una imagen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Añadir un resumen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Ampliar el contenido</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mosaico</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Cascada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Creación automática de un conductor (es)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Proyectos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Colecciones</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Utilizar creación automática de un conductor(es)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translatorcomment>terminales o bornes</translatorcomment> <translation>Lanzar el plugin de creación de terminales</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Agrupar los textos seleccionados</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Gira los elementos y textos seleccionados</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Gira los textos seleccionados a un ángulo determinado</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Encontrar el elemento seleccionado en el panel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Añadir una línea</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Buscar/Reemplazar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Archivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Edición</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>P&royecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Ver</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Venta&nas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Mostrar u ocultar la barra de herramientas principal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Mostrar u ocultar la barra de herramientas "Ver"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Mostrar u ocultar la barra de herramientas "Esquema"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Mostrar u ocultar el panel de dispositivos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Mostrar u ocultar la lista de modificaciones</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Mostrar los proyectos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Herramientas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Ver</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Añadir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Abrir un archivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Parece que el archivo que intenta abrir no es accesible en lectura. Por eso es imposible abrirlo. Por favor compruebe los permisos del archivo.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Parece que el proyecto que intenta abrir no es accesible en escritura. Por eso se abrira en sólo lectura.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Editar el elemento</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Editar el campo de texto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Editar la imagen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Editar el conductor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Editar el objeto seleccionado</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Activar el proyecto « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Limpiar el proyecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Fracaso al abrir el proyecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Parece que el archivo %1 no es un archivo de proyecto QElectroTech. Por eso no se puede abrir.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Anulaciones</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Orientar los textos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Cierre el programa QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Deshacer la última acción</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Restaurar la última acción deshecha</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Transferir los elementos seleccionados al portapapeles</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Copiar los elementos seleccionados al portapapeles</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Deseleccionar los elementos ya seleccionados y seleccionar los elementos no seleccionados</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Recalcule los caminos de los conductores sin tener en cuenta las modificaciones</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Restaurar el zoom por defecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Mostrar los diferentes proyectos abiertos en sub ventanas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Mostrar los diferentes proyectos abiertos en pestañas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Permite seleccionar los elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Poner las ventanas en mosaico</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Poner las ventanas en cascada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Proyecto siguiente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Proyecto previo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Selecciona todos los elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Deselecciona todos los elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Aumenta el tamaño del folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Disminuye el tamaño del folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Ajusta el zoom para visualizar todos los contenidos del folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Ajusta el zoom al folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Añadir un rectángulo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Añadir una elipse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Añadir un polígono</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Exportar el folio en otro formato</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Imprimir uno o más folios</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Pega los elementos del portapapeles en el folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Edita las propiedades del folio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Permitir ver el folio sin modificarlo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Activar el proyecto siguiente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Activar el proyecto previo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Recientemente abiertos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Proyecto %1 guardar en el directorio: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Projectos QElectroTech (*.qet);;Archivos XML (*.xml);;Todos los archivos (*.")</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Imposible de abrir el archivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Parece que el archivo %1 que usted está intentando abrir no existe.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Abriendo el proyecto en sólo lectura</translation> @@ -8277,37 +8621,37 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Editar la información sobre el autor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Añadir una línea</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Añadir una elipse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Añadir un polígono</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Añadir texto</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Añadir un arco de círculo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Añadir un conector</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Deshacer</translation> </message> @@ -8318,12 +8662,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished">Mostrar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Rehacer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Advertencia</translation> </message> @@ -8333,23 +8677,23 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Pegar desde...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Falta de conector</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Ninguna modificación</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Partes</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Profundidad</translation> @@ -8365,12 +8709,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Editar las propiedades de los elementos</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Añadir un campo de texto dinámico</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Doble clic para terminar la forma, Clic derecho para cancelar el último punto</translation> </message> @@ -8390,26 +8734,26 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>&Ver</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[modificado]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [sólo lectura]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Editor de elementos</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n parte selectionada.</numerusform> @@ -8417,13 +8761,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Falta de conector</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8432,235 +8776,235 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>El archivo %1 no existe.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Imposible abrir el archivo %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Este archivo no es un documento XML válido</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Edición en solo lectura</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>No tiene los privilegios necesarios para editar este elemento. Por eso se abrirá en sólo lectura.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Error</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Imposible escribir en el archivo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Imposible guardar el elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Imposible de abrir el archivo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Parece que el archivo %1 que usted está intentando abrir no existe.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Fallo al guardar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Fallo al guardar, Las condiciones requeridas no son validas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">Elementos QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Abrir un archivo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Elementos QElectroTech (*.elmt);;Archivos XML (*.xml);;Todos los archivos (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Recargar el elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Añadir un elemento de texto no editable en los esquemas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Añadir un elemento de texto que se pueda editar en los esquemas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>En ausencia de Terminal, el elemento no puede relacionarse con otros componentes a través de conductores.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Error</b> :<br>Las conexiones de folio deben tener un solo borne.<br><b>Solución</b> :<br>Verifique que el elemento tiene un solo borne</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>La verificación del elemento ha generado</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8669,69 +9013,69 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> y</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Errores</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Advertencias</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Editó este elemento. Si recarga las edicciones se perderan. ¿Está seguro de recargar el elemento?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Guardar como</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Elementos QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Guardar el elemento corriente?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>¿Quiere guardar el elemento %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Elemento inexistente.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>El elemento no existe.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>El camino virtual elegido no corresponde a un elemento.</translation> @@ -8752,7 +9096,7 @@ veuillez patienter durant l'import...</source> <translation>&Pegar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Añadir un rectángulo</translation> </message> @@ -8899,48 +9243,48 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Advertencia</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projecto « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Proyecto %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Proyecto sín título</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [sólo lectura]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [modificado]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8948,50 +9292,50 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Un error ocurrió durante la integración del modelo.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b><p align="center"><b>Apertura del proyecto en curso...</b><br/>Creación de folios</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Apertura del proyecto en curso...</b><br/>Configuración de referencias cruzadas</p></translation> </message> @@ -9030,139 +9374,138 @@ Que désirez vous faire ?</source> <translation>Para duplicar este modelo, escriba el nombre deseado para la copia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Nuevo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Abrir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Abrir desde archivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Guardar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Guardar como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Guardar en archivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Salir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Administrar los logotipos</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Ampliar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Reducir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Ajustar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Normal</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Guardar como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Rótulos de QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Combinar las celdas</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>C&ortar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Copiar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Pegar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Editar las informaciones complementarias</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Añadir una &línea</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Añadir una &columna</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Separar las celdas</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9181,145 +9524,146 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Archivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Edición</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Ver</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Herramientas</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Edición</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Ver</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Ninguna modificación</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Anulaciones</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Propiedades de la celda</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[modificado]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Sólo lectura]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translatorcomment>QElectroTech - Editor de modelo de propiedades</translatorcomment> <translation>QElectroTech - Editor rótulos</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Error</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Abrir un modelo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Abre un archivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Rótulos de QElectroTech (*%1);;Archivos XML (*.xml);;Todos los ficheros (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Guardar el modelo como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Editar las informaciones complementarias</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Puede utilizar este campo en blanco para indicar los autores del rótulo, de su licencia, o cualquier otra información que considere útil.</translation> </message> @@ -9899,18 +10243,18 @@ Que désirez vous faire ?</source> <translation>Propiedades del proyecto</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Seleccione una imagen ...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Los archivos de imagen (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9919,7 +10263,7 @@ Que désirez vous faire ?</source> <translation>Error</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Imposible cargar la imagen.</translation> </message> @@ -10361,24 +10705,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Tipo</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">Comentario</translation> @@ -10386,16 +10730,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10687,22 +11031,22 @@ Voulez-vous la remplacer ?</source> <translation>Creación de conductores</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Para instalar el plugin qet_tb_generator<br>Visita :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Requiere python 3.5 o superior.<br><B><U> Primera instalación en Windows</B></U><br>1. Instalar, si es necesario, python 3.5 o superior<br> Visita :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. instalación de pip qet_tb_generator<br><B><U> Update en Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>El usuario podría iniciar en un terminal este script en este directorio.<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished">Error al iniciar el complemento qet_tb generator</translation> </message> @@ -10904,13 +11248,13 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -11104,6 +11448,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11148,55 +11497,306 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>una forma</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>una línea</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Agrega un punto</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Eliminar este punto</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Tamaño</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Agrega un punto a un polígono</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Eliminar un punto de un polígono</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Editar %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>un rectángulo</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>una elipse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>un polígono</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12110,150 +12710,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>Formulario</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Línea</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Grosor</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Guiones</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Puntos</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Líneas y puntos</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Líneas puntos puntos</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Guión personalizado</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Tipo</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Color</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Relleno</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Estilo</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Ninguno</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Anchura</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Continua</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Densidad 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Densidad 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Densidad 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Densidad 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Densidad 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Densidad 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Densidad 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Cruz</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Diagonal invertida</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Diagonal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Diagonal en cruz</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Bloquear la posición</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Polígono cerrado</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12262,30 +12889,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Modificar el trazo de una forma</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Modificar el relleno de una forma</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Cerrar el polígono</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Modificar una forma simple</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Modificar las propiedades de una forma simple</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> @@ -15132,7 +15789,7 @@ Les autres champs ne sont pas utilisés.</source> <message> <location filename="../sources/TerminalStrip/ui/terminalstriptreedockwidget.cpp" line="233"/> <source>Projet sans titre</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Proyecto sín título</translation> </message> <message> <location filename="../sources/TerminalStrip/ui/terminalstriptreedockwidget.cpp" line="239"/> diff --git a/lang/qet_fr.ts b/lang/qet_fr.ts index b76f1602c..0bac5c1a0 100644 --- a/lang/qet_fr.ts +++ b/lang/qet_fr.ts @@ -586,7 +586,7 @@ <translation>Formulaire</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Etat du projet:</translation> </message> @@ -621,54 +621,54 @@ <translation>À</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Politique de mise à jour</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Conducteur</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Seuls les nouveaux</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Les deux</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Désactiver</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Élément</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Seuls ceux existants</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Folio</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Existants</translation> </message> @@ -845,6 +845,14 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <translation></translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1411,13 +1419,217 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <translation></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1469,39 +1681,39 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation></translation> </message> @@ -2041,7 +2253,7 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation></translation> @@ -2651,90 +2863,95 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Élement </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation></translation> </message> @@ -4521,7 +4738,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation></translation> </message> @@ -4754,6 +4971,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4763,23 +5003,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation></translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation></translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation></translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6539,117 +6877,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation>passer à la page suivante</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation>passer à la page suivante</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation></translation> @@ -6738,173 +7076,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6915,31 +7253,31 @@ Options disponibles : <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation></translation> @@ -6948,916 +7286,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Ajouter une ligne</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Enlever une ligne</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation> @@ -7866,7 +8215,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation> @@ -7875,106 +8224,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation></translation> @@ -8223,17 +8567,17 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation></translation> @@ -8259,52 +8603,52 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation></translation> @@ -8330,31 +8674,31 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n partie sélectionnée.</numerusform> @@ -8362,40 +8706,40 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8404,28 +8748,28 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation></translation> @@ -8437,161 +8781,161 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8600,98 +8944,98 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation></translation> @@ -8839,42 +9183,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8882,56 +9226,56 @@ Voulez-vous continuer ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation></translation> </message> @@ -8969,127 +9313,126 @@ Que désirez vous faire ?</source> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9108,156 +9451,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation></translation> </message> @@ -9628,18 +9972,18 @@ Que désirez vous faire ?</source> <translation></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation></translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9648,7 +9992,7 @@ Que désirez vous faire ?</source> <translation></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation></translation> </message> @@ -10283,24 +10627,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation></translation> @@ -10308,16 +10652,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10614,22 +10958,22 @@ Voulez-vous la remplacer ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Pour installer le plugin qet_tb_generator <br> : visitez le site: <br><a href='https://pypi.python.org/pypi/qet-tb-generator'> qet-tb-generateur </a><br> requiert Python version 3.5 ou supérieure. <br><B><U> Premièrement , installation sous Windows </B></U><br>1. Installez, si nécessaire, Python 3.5 ou version ultérieure <br><br><a href='https://www.python.org/downloads/'> python.org </a><br> 2. pip installer qet_tb_generator <br><B><U> Mise à jour sous Windows </B></U><br> python -m installation de pip --upgrade qet_tb_generator <br> >> l'utilisateur peut lancer dans un terminal ce script dans cette Répertoire <br> C: \ Utilisateurs \ XXXX \ AppData \ Local \ Programmes \ Python \ Python36-32 \ Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Pour installer le plugin qet_tb_generator<br>Visitez:<br><a.href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Nécessite python 3.5 ou supérieur.<br><br><B><U>Première installation sous Linux</B></U><br>1. vérifiez que pip3 est installé: pip3 --version <br>Si ce n'est pas le cas, installez avec: sudo apt-get install python3-pip <br>2. Installez le programme: sudo pip3 install qet_tb_generator <br> 3. Exécutez le programme: qet_tb_generator <br><br><B><U> Mise à jour sous Linux </B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Erreur lors du lancement du plugin qet_tb_generator</translation> </message> @@ -10657,7 +11001,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>c'est une erreur dans le code</translation> @@ -10887,7 +11231,7 @@ Voulez-vous la remplacer ?</source> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation></translation> </message> @@ -11033,6 +11377,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11077,52 +11426,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation></translation> </message> @@ -12000,177 +12600,234 @@ Les autres champs ne sont pas utilisés.</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation></translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_hr.ts b/lang/qet_hr.ts index 6b57ad642..a52380f44 100644 --- a/lang/qet_hr.ts +++ b/lang/qet_hr.ts @@ -616,59 +616,59 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -840,6 +840,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Redova:</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1406,13 +1414,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Greška</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1475,39 +1687,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Greška</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2036,7 +2248,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2646,90 +2858,95 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished">Općenito</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">Vrsta: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished">Nađi na ploči</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished">Uredi element</translation> </message> @@ -4509,7 +4726,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [nekorišteno u projektu]</translation> </message> @@ -4739,6 +4956,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4748,22 +4988,120 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> - <source>Verrouiller la position</source> + <source>Largeur</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation type="unfinished">%</translation> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6526,117 +6864,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Projekt samo za pregled</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Projekt je samo za pregled. Ne može biti brisan.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>obriši nekorištene predloške u projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Obriši nekorištene elemente u projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Obriši prazne kategorije</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Obriši projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Spremi kao</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projekt</translation> @@ -6725,166 +7063,166 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished">Podesite.QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Učitavam...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Učitavam... Ikona trake sustava</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Gotovo</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Sakrij</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Pokaži</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Sakrij uređivač shema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Prikaži uređivač shema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Sakrij uređivač elemenata</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Prikaži uređivač elemenata</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Sakrij uređivač naslova grupe predloška</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Prikaži uređivač naslova grupe predložaka</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Novi uređivač shema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Novi uređivač elemenata</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Zatvori QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimiziraj QElectroTech u traku sustava</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Vrati QElectrotech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Uređivač shema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Uređivač elemenata</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Uređivač naslova grupe predložaka</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Upotrijebljeno:</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6893,7 +7231,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6909,31 +7247,31 @@ Dostupne opcije: --licenca Prikaži licencu</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dirr=DIR Definiraj zajednički direktorij za elemente</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Definiraj direktorij naslova grupe predložaka</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Definiraj direktorij konfiguracije</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Definiraj direktorij za jezične datoteke</translation> @@ -6942,916 +7280,927 @@ Dostupne opcije: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Poništi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Bez promjena</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Kliknite za uređivanje svoje sheme</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Novo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Otvori</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Zatvori</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Spremi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Spremi kao</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Izvoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished">Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Ispiši</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Kraj</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Poništi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Vrati kako je bilo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>I&zreži</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Kopiraj</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Zalijepi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished">Dodaj liniju</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished">Ukloni red</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Odaberi sve</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Bez odabira</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Obrnuta (inverzna) selekcija</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished">Dubina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Obriši</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Okreni</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Odaberi orijentaciju teksta</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation type="unfinished">Nađi na ploči</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Resetiraj vodiče</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Dodaj tekstualno polje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Dodaj stupac</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Ukloni stupac</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Svojstva projekta</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Obriši projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Povećaj</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Smanji</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Podesi povećanje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Poništi povećanje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>koristi kartice</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>koristi prozore</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Način selekcije</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Vrsta pogleda</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mozaik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Kaskada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Slijedeći projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Prethodni projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished">Dodaj pravokutnik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished">Dodaj elipsu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished">Nemoguće otvoriti datoteku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished">Otvori datoteku samo za čitanje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Zatvori QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Poništi prethodne akcije</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Vrati poništene akcije</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Stavi odabrane elemente u međuspremnik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Kopiraj odabrane elemente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Poništi odabir elemenata i odabei elemente koji nisu bili odabrani</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Okreni odabrani element i tekst</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Okreni odabrani tekst za određeni kut</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Vrati putanje vodiča ignorirajući korisničke promjene</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Vrati nivo temeljnog povećanja</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished">Dodaj liniju</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Prikaži otvorene projekte u prozorima</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Prikaži otvorene projekte u karticama</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Dozvoli odabir elemenata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Složi prozore kao mozaik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Složi prozore u kaskadu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Aktiviraj slijedeći projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Aktiviraj prethodni projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Datoteka</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Uredi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Ekr&an</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Pro&zor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Prikaži ili sakrij glavnu alatnu traku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Prikaži ili sakrij alatnu traku ekrana</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Prikaži ili sakrij alatnu traku sheme</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Ekran ili element van panela</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Prikaži ili sakrij listu vraćanja</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Prikaži projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Alati</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Ekran</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Shema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Otvori datoteku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Datoteka koju pokušavate otvoriti nije čitljiva i ne može biti otvorena. Molim provjerite dozvole za datoteku.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Nije moguće upisivanje u projekt kojeg pokušavate otvoriti. Otvorit će se samo za čitanje.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Nemoguće otvoriti projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7861,7 +8210,7 @@ Dostupne opcije: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7871,106 +8220,101 @@ Dostupne opcije: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Greška</translation> @@ -8239,42 +8583,42 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Uredi informacije o autoru</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Dodaj liniju</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Dodaj pravokutnik</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Dodaj elipsu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Dodaj poligon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Dodaj tekst</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Dodaj luk</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Dodaj priključak</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Poništi</translation> </message> @@ -8285,39 +8629,39 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished">Prikaz</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8327,12 +8671,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8342,149 +8686,149 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Vrati poništeno</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">QElectroTech elementi (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Upozorenje</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Dijelovi</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Dubina</translation> @@ -8510,31 +8854,31 @@ veuillez patienter durant l'import...</source> <translation>Zalijepi iz...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Promijenjeno]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Samo za čitanje]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Bez izmjena</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Uređivač elemenata</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n odabrani dio.</numerusform> @@ -8543,154 +8887,154 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Nedostaje priključak</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished">Nedostaje priključak</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished">Upozorenje</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Datoteka %1 ne postoji.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Nemoguće otvoriti datoteku %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Datoteka nije važeči XML dokument</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Greška</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Verzija samo za čitanje</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Nemate dozvolu mijenjati ovaj element. Samo za čitanje je.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Greška</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Ne mogu pisati u datoteku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Nemoguće spremiti element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished">Nemoguće otvoriti datoteku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Ponovo učitaj element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Element je promijenjen od posljednjeg spremanja. Ako ga ponovo učitate, promjene će biti izgubljene. Želite li zaista ponovo učitati element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Spremi kao</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech elementi (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Spremi trenutni element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Želite li spremiti element %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Otvori datoteku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech elementi (*.elmt);;XML files (*.xml);;Sve datoteke (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Nepostojeći element.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Element ne postoji.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Izabrana putanje ne poklapa se s elementom.</translation> @@ -8838,42 +9182,42 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projekt %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Projekt bez naslova</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [samo za čitanje]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8881,56 +9225,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Greška nastala tijekom integracije predloška.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Upozorenje</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -8968,127 +9312,126 @@ Que désirez vous faire ?</source> <translation>Za kopiranje predloška, molim imenujte negovu kopiju</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Novo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Otvori</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Otvori iz datoteke</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Spremi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Spremi kao</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Spremi u datoteku</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Kraj</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>I&zreži</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Kopiraj</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Zalijepi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Uredi znak</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Uredi dodatne informacije</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Povećaj</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Smanji</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Podesi povećanje</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Poništi povećanje</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Dodaj &red</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Dodaj &stupac</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Zalijepi ćelije</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Razdvoji ćelije</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9107,156 +9450,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Datoteka</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Uredi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>Ekr&an</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Alati</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Uredi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Ekran</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Bez promjena</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Poništi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Svojstva ćelije</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Promijenjeno]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation> [Samo za čitanje]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Uređivač naslova grupe predložaka</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Greška</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Otvori naslov bloka uzorka</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Otvori datoteku</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech naslov grupe predložaka (*%1);;XML files (*.xml);; Sve datoteke (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Spremi predložak kao</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Spremi kao</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech naslov grupe predložaka (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Uredi dodatne informacije</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Možete koristiti ovaj prostor za navođenje autora predloška, njegovu licencu ili bilo koje druge informacije koje smatrate korisnima.</translation> </message> @@ -9830,7 +10174,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -10044,23 +10388,23 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -10090,7 +10434,7 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -10290,22 +10634,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10448,24 +10792,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished"></translation> @@ -10473,16 +10817,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11045,6 +11389,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11089,52 +11438,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation type="unfinished"></translation> </message> @@ -12013,176 +12613,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> - <source>Trait</source> + <source>Géométrie</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> + <source>Trait</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished">Normalno</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished">Crtkano</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished">Točkasto</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished">Niišta</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation type="unfinished">Zatvoreni poligon</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_hu.ts b/lang/qet_hu.ts index 278a8bb6f..804d2b753 100644 --- a/lang/qet_hu.ts +++ b/lang/qet_hu.ts @@ -591,7 +591,7 @@ <translation>Űrlap</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>A projekt állapota:</translation> </message> @@ -626,54 +626,54 @@ <translation>ig</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Frissítési Szabály</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Vezeték</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Csak az új</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Mindkettő</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Letíltás</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Elem</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Csak a létező</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Tervlap</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Létező</translation> </message> @@ -856,6 +856,14 @@ Megjegyzés: ezek a lehetőségek NEM engedélyezik, vagy blokkolják az Automat <translation>Fejlécek megjelenítése</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1422,13 +1430,217 @@ Megjegyzés: ezek a lehetőségek NEM engedélyezik, vagy blokkolják az Automat <translation>Hozzáad %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>egy kép</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Kép kiválasztása ...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Hiba</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Nem lehet a fájlt betölteni.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1480,39 +1692,39 @@ Megjegyzés: ezek a lehetőségek NEM engedélyezik, vagy blokkolják az Automat <translation>Sablon-fájl készítése</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>A kiválasztott csatlakozók összekötése</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Cím nélkül</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation>Hiba</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation></translation> </message> @@ -2052,7 +2264,7 @@ Megjegyzés: ezek a lehetőségek NEM engedélyezik, vagy blokkolják az Automat <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation>Egy elem automatikus számozása</translation> @@ -2663,101 +2875,106 @@ Az elem megjelenítési nevét külön lehet szerkeszteni az elem tulajdonságok <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Általános</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Elem </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Név : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Tervlap : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Típus : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Altípus : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Pozíció : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Elforgatás : %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Kiterjedés : %1×%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Csatlakozók : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation>Az alárendelt érintkezők maximális száma: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation>Felhasznált érintkezők száma : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Elhelyezés : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Pozíció rögzítése</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Keresés a penelben</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Elem szerkesztése</translation> </message> @@ -4569,7 +4786,7 @@ Bármilyen beállítás, ami más mint a „Nincs kerekítés” renderelési h <translation>Ez egy tervjel sablon, amit a tervlaphoz lehet alkalmazni.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [a projektben nem használt]</translation> </message> @@ -4800,6 +5017,29 @@ Bármilyen beállítás, ami más mint a „Nincs kerekítés” renderelési h <translation>Függőleges</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished">Visszaállítás</translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4809,23 +5049,121 @@ Bármilyen beállítás, ami más mint a „Nincs kerekítés” renderelési h </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Szélesség</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Magasság</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Pozíció rögzítése</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Kép mérete</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Kép újraméretezése</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Előnézet</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6593,118 +6931,118 @@ Az összeférhetetlen változók a következők: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>A projekt módosítva volt. Akarod menteni a változásokat?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Mentés más néven</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>cím nélkül</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Projekt QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>nincs aktív projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Töröljük ezt a tervlapot ?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation>Biztos vagy benne, hogy törölni akarod ezt a tervlapot a projektből?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Csak olvasható projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Ez a profekt csak olvasható. Ezért, ez nem tisztítható.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>A nemhasznált sablonok törlése a projektben</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>A nemhasznált elemek törlése a projektben</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Üres kategóriák törlése</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Projekt tisztítása</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Tervlap hozzáadása</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Visszatérés a projekt kezdőpontjához</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Ugrás a projekt végéhez</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation>menj egy lapot balra</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation>menj egy lapot jobbra</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Ez a projekt nem tartalmaz tervlapokat</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Projekt megnyitása ...</b><br/>Tervlap fül létrehozása :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projekt</translation> @@ -6793,145 +7131,145 @@ Akarod menteni a változásokat?</translation> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech konfigurálása</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Töltés...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Töltés... Rendszer tálca ikon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Kilép</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Elrejt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Mutat</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Elrejti a vázlat szerkesztőt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Megjeleníti a vázlat szerkesztőt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Elrejti az elem szerkesztőt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Megjeleníti a elem szerkesztőt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Elrejti a szövegmező sablon szerkesztőt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Megjeleníti a szövegmező sablon szerkesztőt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Új vázlat szerkesztő</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Új elem szerkesztő</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>QElectroTech bezárása</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>QElectroTech tálcába helyezése</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>QElectroTech visszahelyezése</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Vázlat szerkesztők</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Elem szerkesztők</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Szövegmező sablon szerkesztő</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>A következő helyreállított fájl-t találtuk, <br> Szeretnéd megnyitni ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>A következő helyreállított fájlokat találtuk, <br> Szeretnéd megnyitni őket ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Fájl helyreállítás</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation>Programleállás jelentés</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation variants="yes"> @@ -6941,22 +7279,22 @@ Itt találhatóak az bezárás előtti utolsó naplózott üzenetek – elmenthe </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation>Diagnosztikai jelentés</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation>Ez tartalmazza a munkamenet legutolsó naplóbejegyzéseit. Kérlek, ellenőrizd le a tartalmát, mielőtt a nyilvános hibajelentéshez csatolod.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Használat: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6965,7 +7303,7 @@ Itt találhatóak az bezárás előtti utolsó naplózott üzenetek – elmenthe </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6982,35 +7320,35 @@ Elérhető lehetőségek: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Meghatározza az elemgyűjtemény könyvtárat </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Meghatározza a szövegmező-sablonok gyűjtemény-könyvtárát </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Meghatározza a konfigurációs könyvtárat </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --adat-könyvtár=DIR Meghatározza az adat könyvtár </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Meghatározza nyelvi fájl könyvtárat @@ -7020,922 +7358,933 @@ Elérhető lehetőségek: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Nincs módosístás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Kattints egy műveletre, hogy visszaterjen a változtatásokban egy korábbi állapotra</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Ez a panel felsorolja a különböző végrehajtott változtatásokat a jelenlegi tervlapon. Egy változásra kattintva, a tervlap visszakapja azt az állapotot, ami közvetlenül utána volt alkalmazva.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Visszavonás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Exportálás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Nyomtatás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Kilépés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Visszavonás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Újrakészít</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Ki&vágás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>M&ásolás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Beilleszt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Vezetékek visszaállítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Önműködően létrehozza a vezetőket</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Használja a vezetők automatikus létrehozását, amikor lehetséges</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Háttér szín fehér / szürke</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Rács megjelenítése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Megjeleníti vagy elrejti a tervlap rácsát</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Tervlap tulajdonsága</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Projekt tulajdonságok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Tervlap hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Ennek a tervlapnak a törlése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Projekt tisztítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Összesítés hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Elindítja a sorkapocsterv generáló beépülő modult</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>fülek használata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>ablakok használata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Kiválasztás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translatorcomment>tervlap mozgatása keresgéléshez</translatorcomment> <translation>Keresgélési nézet mód</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mozaik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Lépcsőzetes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Következő projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Előző projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Új</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Megnyitás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Mentés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Mentés más néven</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Bezár</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Új projekt létrehozás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Létező projekt megnyitása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>A jelenlegi projekt bezárása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>A jelenlegi projekt és összes tervlap mentése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>A jelenlegi projekt mentése más néven</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Oszlop hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Oszlop eltávolítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Egy oszlop hozzáadása a tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Egy oszlop eltávolítása a tervlapról</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Tervlap magasság növelése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Tervlap magasság csökkentése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Törlés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Forgatás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Szöveg irányának megváltoztatása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Keresés a panelban</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>A kijelölt elem szerkesztése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Keresés / csere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Rétegelrendezés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Csoport</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Osztályozási rendszer hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Kiválasztott szövegek csoportosítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Kiválasztott elem eltávolítása a tervlapról</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>A kiválasztott elemek és szövegek forgatása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>A kiválasztott szövegek forgatása egy meghatározott szögben</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>A kiválasztott elem keresése a panelen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Összes kiválasztása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Kiválasztás megszüntetése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Kiválasztás megfordítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Összes elem kiválasztása a tervlapon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Összes elem kiválasztásának megszüntetése a tervlapon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Elemek kiválasztásának megfordítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Nagyítás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Kicsinyítés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Tartalom nagyítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Legnagyobb nézetben</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Nagyítás alaphelyzetbe állítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Tervlap nagyítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Tervlap kicsinyítése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Beállítja a nagyítást a teljes tartalom megjelenítéséhez, a tervlaptól függetlenül</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Beállítja a nagyítást pontosan a tervlap részére</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Visszaállítja az alapértelmezett nyagyítást</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Szövegmező hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Kép hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Négyzet hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Elipszis hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Sokszög hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>A jelenlegi tervlapot más formátumba exportálja</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Egy, vagy több tervlapot kinyomtat a jelenlegi projektből</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>QElectroTech bezárása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Az előző művelet visszavonása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projektek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Gyűjtemény</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Visszaállítja a visszavont műveletet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>A kiválasztott elemek vágólapra helyezése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>A kiválasztott elemek másolása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>A vágólapon lévő elemeket beilleszti a tervlapba</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Sor hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Sor eltávolítása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Vonal rajzolása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Visszaállítja a vezetékek útvonalát, figyelmen kívül hagyva a felhasználó változtatásait</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Tervlap tulajdonságainak szerkesztése (méret, szövegmező információk, vezeték tulajdoságok...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Ablakban jeleníti meg a különböző megnyitott projekteket</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Füleken jeleníti meg a különböző megnyitott projekteket</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Engedélyezi az elemek kiválasztását</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Lehetővé teszi a tervlap megtekintését a módosítása nélkül</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Ablakok elrendezése mozaik mintában</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation>Tervlap szerkesztő</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Exportálás PDF-be</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Exportálja a jelenlegi projekt egy vagy több tervlapját</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation>A vezeték(ek) automatikus szétbontása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation>Automatikusan elvágja a vezetéket, amikor egy elemet helyezünk rá</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>A tervlap hátterét jeleníti meg fehéren, vagy szürkén</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation>Útmutató megjelenítése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation>Megjeleníti vagy elrejti a útmutatót</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Exportálás CSV formátumba</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Sorkapocs rendszerező (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Vezetékek nevének exportálása listába</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation>Kábelterv exportálása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation>Sorkapcsok automatikus számozása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>A belső projekt adatbázis exportálása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Ablakok elrendezése lépcsőzetesen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Következő projekt aktiválása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Előző projekt aktiválása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Sorkapocsterv hozzáadása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Szövegmező hozzáadása a jelenlegi tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Kép hozzáadása a jelenlegi tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Vonal hozzáadása a jelenlegi tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Négyszög hozzáadása a jelenlegi tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Ellipszis hozzáadása a jelenlegi tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Vonallánc hozzáadása a jelenlegi tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Sorkapocsterv hozzáadása a jelenlegi tervlaphoz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation>Elemhez ugrás</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation>Elem gyors keresése és kiválasztása a tervlapon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Eszközök</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Megjelenítés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Terv</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Hozzáad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Fájl</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>S&zerkesztés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Megjelenítés</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Ab&lakok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Utolsó fájlok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Megjeleníti, vagy elrejti a fő eszköztárat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Megjeleníti, vagy elrejti a eszköztárat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Megjeleníti, vagy elrejti tervlap eszköztárat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Megmutatja, vagy elrejti az elemek panelt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Megjeleníti, vagy elrejti a visszavonás listát</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Projektek megjelenítése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>A %1 projekt bejegyezve a: %2 könyvtárba.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Fájl megnyitása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech projekt(*.qet);;XML fájlok (*.xml);;minden fájl (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Nem lehet a fájlt megnyitni</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Úgy tűnik %1 fájl amelyiket megpróbáltad megnyitni nem létezik, vagy nem létezik többé.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>A megnyitni próbált fájl sérültnek tűnik és nem lehet megnyitni. Kérlek ellenőrízd a fájlhoz szükséges engedélyeket.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Csak olvasható fájl megnyitása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>A megnyitni próbált projekt írásvédetnek tűnik. Csak olvashatóként lesz megnyitva.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Képtelen megnyitni a projektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>A(z) %1 fájl úgy tűnik nem egy QElectroTech projektfáj. Ezért nem nyitható meg.</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation> @@ -7943,7 +8292,7 @@ Elérhető lehetőségek: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation> @@ -7951,23 +8300,18 @@ Elérhető lehetőségek: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation>Projekt betűtípus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Dupla kattintás a forma befejezéséhez, Jobb kattintás az utolsó pont visszavonásához</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation>Nem lehet törölni a sorkapcsot</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation variants="yes"> @@ -7977,79 +8321,79 @@ Szüntesd meg az áthidalást és/vagy távolítsd el a szinteket az érintett s </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Elem szerkesztése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Szövegmező szerkesztése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Kép szerkesztése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Vezető szerkesztése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Kijelölt objektum szerkesztése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Hiba történt a fájl megnyitásakor %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Projekt aktiválása « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation>Biztos vagy benne, hogy törölni akarod ezt a tervlapot?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation>Tervlap törlése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation>Valóban törölni akarod ezt a kiválasztott %1 tervlapot ?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation>Tervlap %1 törlése</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation>Tervlap mozgatása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Hiba</translation> @@ -8298,17 +8642,17 @@ Szüntesd meg az áthidalást és/vagy távolítsd el a szinteket az érintett s <translation>Elem tulajdonságainak szerkesztése</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Visszavonás</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Újrakészít</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Rétegelrendezés</translation> @@ -8334,52 +8678,52 @@ Szüntesd meg az áthidalást és/vagy távolítsd el a szinteket az érintett s <translation>Nagyítás alaphelyzetbe állítása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Vonal rajzolása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Négyzet hozzáadása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Elipszis hozzáadása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Sokszög hozzáadása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Szöveg hozzáadása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Ív hozzáadása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Csatlakozó hozzáadása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Dinamikus szövegmező hozzáadása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Dupla kattintás a forma befejezéséhez, Jobb kattintás az utolsó pont visszavonásához</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Alkatrészek</translation> @@ -8405,66 +8749,66 @@ Szüntesd meg az áthidalást és/vagy távolítsd el a szinteket az érintett s <translation>Beillesztés valamiből...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Megváltozott]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Csak olvasható]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Nincs módosístás</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Elemek szerkesztése</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n kiválasztott alkatrész.</numerusform> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Hiányzó csatlakozó</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Csatlakozó nélkül,az elemet nem lehet csatlakoztatni másik elemhez vezetékkel.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Hiányzó csatlakozó</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br> <b> Hiba </ b>: <br> a tervlap hivatkozásnak muszály rendelkeznie kell egy csatlakozással<br> <b> Megoldás </ b> :<br> Ellenőrízd, hogy az elem csak egy csatlakozással rendelkezik</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Az elem generálásának megerősítése</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8472,28 +8816,28 @@ Szüntesd meg az áthidalást és/vagy távolítsd el a szinteket az érintett s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> és</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Hiba</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Figyelmeztetés</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>A %1 fájl nem létezik.</translation> @@ -8505,177 +8849,177 @@ Szüntesd meg az áthidalást és/vagy távolítsd el a szinteket az érintett s <translation>Megjelenítés</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Nem lehet a fájlt megnyitni %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Ez a fájl nem egy felhasználható XML dokumentum</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Hiba</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Csak olvasható szerkesztés</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Nem engedélyezet ennek a elemnek a módosítása. Így, csak olvasható módban fog megnyílni.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Hiba</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Nem lehet írni ezt a fájl-t</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Nem lehet a fájlt menteni</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Túl sok alkotóelem, a lista nem generálódott: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation>Helytelen számú sorkapocs</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation><br><b>Hiba</b>:<br>A vezetődefinícióknak csak egy csatlakozójuk lehet.<br><b>Megoldás</b>:<br>Ellenőrizd, hogy az elemnek csak egy csatlakozója van-e</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation>Elem szerkesztők</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Nem szerkeszthető elemszöveg hozzáadása a tervlapokon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Szerkeszthető elemszöveg hozzáadása a tervlapokon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>A mentés nem sikerült, érvénytelen feltételek miatt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation>Exportálás SVB-be</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translatorcomment>megengedett fáljtípus, amikor egy elemet exportálunk SVG-be</translatorcomment> <translation>SVG kép (*.svg)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation>Exportálás sikertelen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation>Nem lehet írni ebbe a fájl-ba« %1 ».</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Figyelem</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Nagyméretű DXF file importálása eltarthat egy ideig kérlek várd meg a befejezését...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Elem importálása átméretezéshez</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>QElectroTech elemek (*.elmt)</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8683,90 +9027,90 @@ kérlek várd meg a befejezését...</translation> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Nem lehet a fájlt megnyitni</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Úgy tűnik %1 fájl amelyiket megpróbáltad megnyitni nem létezik, vagy nem létezik többé.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Elem újratöltése</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Az elem módosítva lett az utolsó mentés óta. Ha újratöltöd, ezek a változások elvesznek. Biztosan akarod az elem újratöltését?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Regisztráció sikertelen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Mentés más néven</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech elemek (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Mented a jelenlegi elemet?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Szeretnéd menteni az elemet %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Fájl megnyitása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech projekt(*.qet);;XML fájlok (*.xml);;minden fájl (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Nem létező elem.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Az elem nem létezik.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>A kiválasztott virtuális elérési útvonal nem tartozik egy elemhez sem.</translation> @@ -8914,42 +9258,42 @@ kérlek várd meg a befejezését...</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projekt « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projektek %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Cím nélküli projekt</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [csak olvasható]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [megváltozott]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation>Módosított érintkező rendszer</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8960,19 +9304,19 @@ A meglévő alárendelt elemek nem lesznek automatikusan hozzárendelve. Manuál Szeretnéd folytatni?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Hiba történt a sablon integrációja közben.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Figyelem</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8981,7 +9325,7 @@ ez későbbi verzió a jelenlegihez képest! Jelenleg használt QElectroTech verzió %2</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8990,32 +9334,32 @@ Lehetséges, hogy a dokumentum teljes egéssze, vagy egy része nem nyitható me Mit szeretnél tenni?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Figyelem </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>A megnyitni próbált projekt részlegesen kompatibilis a QElecroTech %1 verziójával. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>A teljes kompatibilitás elérése érdekében nyissa meg ugyanezt a projektet a QElectroTech 0.8-as vagy 0.80-as verziójával, mentse el a projektet, majd nyissa meg újra ezzel a verzióval. Mit szeretnél csinálni?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Projekt megnyitása ...</b><br/>Tervlap létrehozása</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Projekt megnyitása ...</b><br/>Kereszthivatkozások beállítása</p></translation> </message> @@ -9053,127 +9397,126 @@ Mit szeretnél csinálni?</translation> <translation>A sablon duplikálásához, kérlek írd be a másolat nevét</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Új</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Megnyitás</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Megnyitás egy fájlból</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>M&entés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Mentés más néven</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Mentés fájlba</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Kilépés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Ki&vágás</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>M&ásolás</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Beillesztés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Logók szervezése</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>A kiegészítő információ módosítása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Nagyítás</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Kicsinyítés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Legnagyobb nézetben</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Nagyítás alaphelyzetbe állítása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>So&r hozzáadása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Oszlo&p hozzáadása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Cellák egyesítése</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>Cellák &felosztása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9192,156 +9535,157 @@ Mit szeretnél csinálni?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation>Szövegmező sablon szerkesztő</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Fájl</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>S&zerkesztés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Megjelenítés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Eszközök</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Szerkesztés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Megjelenítés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Nincs módosístás</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Visszavonás</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Cella tulajdonságok</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Megváltozott]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Csak olvasható]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Szövegmező sablon szerkesztés</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Hiba</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Szövegmező sablon megnyitása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Fájl megnyitása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech szövegmező sablonok (*%1);;XML fájlok (*.xml);; minden fájl (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Sablon mentése más néven</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Mentés más néven</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectrotech szövegmező sablonok (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>A kiegészítő információ módosítása</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Ezt a mezőt használhatod a sablon szerzőjének megnevezéséhez, az engedélyekhez, vagy egyébb más hasznos információ kereséshez.</translation> </message> @@ -9475,18 +9819,18 @@ Mit szeretnél csinálni?</translation> <translation>Dátum</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Kép kiválasztása ...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Kép fájlok (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9495,7 +9839,7 @@ Mit szeretnél csinálni?</translation> <translation>Hiba</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Nem lehet a fájlt betölteni.</translation> </message> @@ -10364,24 +10708,24 @@ Cserélni akarod?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation>Típus</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation>Cím</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Megjegyzés</translation> @@ -10389,16 +10733,16 @@ Cserélni akarod?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation>Kereszthivatkozás</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10695,22 +11039,22 @@ Cserélni akarod?</translation> <translation>Vezetékek létrehozása</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>A qet_tb_generator beépülő modul telepítésehez<br>Látogass el:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Szükséges hozzá python 3.5 vagy, magasabb verziója.<br><B><U> Első telepítés Windowson</B></U><br>1. Python 3.5 vagy, magasabb verziójának telepítése, ha szükséges<br> Látogass el :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. parancssorba gépelve: pip install qet_tb_generator<br><B><U> Frissítés Windowson</B></U><br>parancssorba gépelve: python -m pip install --upgrade qet_tb_generator<br>>>a felhasználó ezt a script-et a terminálban indíthatja el és ebben a könyvtárban található <br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> (XXXX a felhasználó neve)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>A qet_tb_generator beépülő modul telepítésehez<br>Látogass el:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Első telepítés macOSX-en</B></U><br> 1.-Szükséges hozzá python 3.11 verziója.<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. Futtasd a Profile.command script-et<br>mert a program lokalizációhoz rögzített útvonalat használ qet-tb-generator beépülő modul <br> Látogass el :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>útmutató</a><br>2. pip3 install qet_tb_generator<br><B><U> Frissítés macOSX-en</B></U><br> pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>A qet_tb_generator beépülő modul telepítésehez<br>Látogass el :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Szükséges hozzá a python 3.5 vagy magasabb verzió.<br><br><B><U> Első telepítés Linuxon</B></U><br>1.Ellenőrízd, hogy telepítve van-e: pip3 --version<br>Ha nincs, akkor töltsd le ezzel: sudo apt-get install python3-pip<br>2. Telepítsd a programot ezzel: sudo pip3 install qet_tb_generator<br>3. Futtasd a programot ezzel: qet_tb_generator<br><br><B><U> Frissítés Linuxon</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Hiba a qet_tb_generator beépülő modul indítással</translation> </message> @@ -10738,7 +11082,7 @@ Cserélni akarod?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>ez egy hiba a programkódban</translation> @@ -10968,7 +11312,7 @@ Cserélni akarod?</translation> <translation>Egy elem megnyitása</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>DXF fájl importálása</translation> </message> @@ -11116,6 +11460,11 @@ Kérlek, töltsd le az alábbi linkről, és csomagod ki a telepítési mappába <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11162,52 +11511,303 @@ Kérlek adj hozzá egy új táblázatot, vagy igazítsd a meglévőt megfelelő <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Pont felvétele</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Pont törlése</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Méret</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Pont hozzáadása egy sokszöghöz</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Pont törlése egy sokszögből</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Szerkesztés %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>a vonal</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>négyszög</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>elipszis</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>vonallánc</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>a forma</translation> </message> @@ -12142,150 +12742,177 @@ A többi mező nincs használva.</translation> <translation>Űrlap</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Vonal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Vastagság</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normál</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Szaggatott</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Pontozott</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Szaggatott pontvonal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Szaggatott pont pontvonal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Szaggatott vonal testreszabása</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Típus</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Szín</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Kitöltés</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Stílus</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Nincs</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Szélesség</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Magasság</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Folyamatos vonal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Sűrűség 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Sűrűség 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Sűrűség 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Sűrűség 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Sűrűség 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Sűrűség 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Sűrűség 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Vízszintes</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Függőleges</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Kereszt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Átlós hátsó</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Átlós elülső</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Átlós kereszt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Pozíció rögzítése</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Zárt sokszög</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12294,30 +12921,60 @@ A többi mező nincs használva.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Alakzat vonalának szerkesztése</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Alakzat kitöltésének módosítása</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Sokszög bezárása</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Egy egyszerű alakzat módosítása</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Egyszerű alakzat tulajdonságainak módosítása</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_it.ts b/lang/qet_it.ts index 8c1030f94..56b68ce0a 100644 --- a/lang/qet_it.ts +++ b/lang/qet_it.ts @@ -586,9 +586,9 @@ <translation>A</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Entrambi</translation> </message> @@ -614,7 +614,7 @@ <translation type="unfinished">Gestione Numerazione automatica</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Pagina</translation> </message> @@ -644,14 +644,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol Nota: queste opzioni non consentono attivare o disattivare la numerazione automatica, ma solo la loro politica di aggiornamento.</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Conduttore</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Solo nuovi</translation> </message> @@ -666,7 +666,7 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <translation>In sviluppo</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Gestione dell'aggiornamento</translation> </message> @@ -676,8 +676,8 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <translation>All'intero progetto</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Solo esistenti</translation> </message> @@ -687,24 +687,24 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <translation>Installazione</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Disabilita</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Elemento</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Stato del progetto:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Esistenti</translation> </message> @@ -847,6 +847,14 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <translation>Linee :</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <translation>Inserire %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>una immagine</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Selezionare un'immagine...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Errore</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Impossibile caricare l'immagine.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1471,39 +1683,39 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <translation type="unfinished">Modifica le proprietà di un conduttore</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Collegare i morsetti selezionati</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished">Senza titolo</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Errore</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,92 +2864,97 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Generale</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Pagina : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Terminali : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Posizione : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Elemento</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotazione: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Position : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Type : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Modifica l'elemento</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Dimensione : %1*%2</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Sottotipo : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Mostra nello schema</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Nome : %1 @@ -4533,7 +4750,7 @@ Qui è possibile specificare il valore predefinito di questo campo per gli ogget <translation type="unfinished">Questo è un modello di cartiglio, che può essere applicato ad una pagina.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [non utilizzato nel progetto]</translation> </message> @@ -4770,12 +4987,30 @@ Qui è possibile specificare il valore predefinito di questo campo per gli ogget </message> </context> <context> - <name>ImagePropertiesWidget</name> + <name>ImageCropDialog</name> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImagePropertiesWidget</name> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="14"/> <source>Form</source> @@ -4783,18 +5018,121 @@ Qui è possibile specificare il valore predefinito di questo campo per gli ogget </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Larghezza</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Posizione fissa</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Dimensioni dell'immagine</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Modifica la larghezza di un''immagine</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Anteprima</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6566,118 +6904,118 @@ Funzione : %1</translation> <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Eliminare i modelli di cartiglio non utilizzati nel progetto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Torna all'inizio del progetto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Delete empty categories</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>senza nome</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Cancellare gli elementi non usati nel progetto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Apertura progetto in corso...</b><br/>Creazione delle schede della pagina :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Aggiungi una pagina</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>The project was modified. Do you want to save changes?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished">Salva come</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished">Progetto QElectrotech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished">nessun progetto inviato</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Eliminare la pagina?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished">Progetto in sola lettura</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation type="unfinished">Questo progetto è in sola lettura. Perciò non può essere pulito.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation type="unfinished">Pulisci il progetto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Vai alla fine del progetto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished">Questo progetto non contiene nessuna pagina</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation type="unfinished">Progetto</translation> @@ -6694,29 +7032,29 @@ Do you want to save changes?</translation> <context> <name>QETApp</name> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Nuovo modificatore d'elemento</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Sono stati trovati i seguenti file di ripristino,<br>Aprirli?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Definisce la directory di configurazione </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>Nascondi (&M)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6733,55 +7071,55 @@ Opzioni disponibili: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Ripristina QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>File di ripristino</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>Nascondi i &modificatori d'elemento</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Chiudi QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Definisce la directory dei file della lingua</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Modificatori d'elemento</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>Most&ra i modificatori di schema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Modificatori di schema</translation> </message> @@ -6858,123 +7196,123 @@ Opzioni disponibili: <translation type="unfinished">QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished">Configurazione QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation type="unfinished">Caricamento...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation type="unfinished">Caricamento... icona Systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>Esci (&Q)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished">Nascondi i &modificatori di cartiglio</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished">Most&ra i modificatori di cartiglio</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation type="unfinished">Modificatori di cartiglio</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Definisce la directory della collezione degli elementi </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Uso: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>Visualizza (&R)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Riduci QElectroTech nella systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Definisce la directory della collezione dei modelli di cartiglio</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>Most&ra i modificatori d'elemento</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>È stato trovato il seguente file di ripristino,<br>Aprirlo?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>Nascondi i &modificatori di schema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Nuovo modificatore di schema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6986,811 +7324,822 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Nessuna modifica</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Aggiunge un'ellisse sulla pagina corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>Salva (&E)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Seleziona tutto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Usando le finestre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Mostra o nascondi lacronologia delle modifiche</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Adatta alla pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Proprietà della pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Aggiungere una riga</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Resetta i conduttori</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Elimina una colonna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Regola lo zoom per visualizzare l'intero contenuto della pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Aggiunge un poligono sulla pagina corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Progetto seguente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Stampa</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Gruppo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Aggiungi un campo di testo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Strumenti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nuovo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Zoom sul contenuto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Attiva il progetto « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>Inc&olla</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Deseleziona tutto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Aggiungi una colonna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Esportare la lista dei conduttori</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Mostra o nascondi gli strumenti dello schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Lancia il plugin di creazione delle morsettiere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Ruota</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Visualizzare o nasacondere la griglia delle pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Modalità selezione</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished">Impossibile aprire il file</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Sembra che il file %1 che si è cercato di aprire non esista più.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Cancella</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Salva come</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Aggiunge un'immagine sulla pagina corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Aggiungere una nomenclatura</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Inserisci</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Annulla</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Aggiungi una ellisse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Ripeti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>Esci (&Q)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished">Apertura del progetto in sola lettura</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Il progetto che si cerca di aprire non è accessibile in scrittura. Verrà aperto in modalità sola lettura.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Il file che si cerca di aprire non è accessibile in lettura e non può essere aperto. Controllare i permessi sui file.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Riduci</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Espora il database del progetto intero </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Aggiunge un rettangolo sulla pagina corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Cascata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Barra dello schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Progetto QElectroTech (*.qet);;File XML (*.xml);;Tutti i file (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mosaico</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Taglia (&U)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Resetta lo zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Raggruppare i testi selezionati</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Cop&ia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Aggiungi un indice</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>Chiudi (&F)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Modalità visualizzazione</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Usando le linguette</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Fi&nestre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Progetto %1 registrato nella cartella: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>Apri (&O)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Aggiunge una linea sulla pagina corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Progetto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Visualizzare nello schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Modifica l'oggetto selezionato</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Collezioni</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Inverti la selezione</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Aggiungi un rettangolo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Mostra la griglia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation type="unfinished">QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished">Progetti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation type="unfinished">Fare clic su un'azione per annullare la modifica dello schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished">Questo pannello elenca le diverse azioni eseguite sulla pagina corrente. Selezionare un'azione per tornare allo stato dello schema appena dopo la sua l'applicazione.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished">Cancellazioni</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished">Esporta la pagina corrente in un altro formato</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished">Stampa una o più pagine del progetto corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished">Esporta in pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished">Esporta uno o tutti gli schemi del progetto corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation type="unfinished">Chiudi QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation type="unfinished">Annulla l'azione precedente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation type="unfinished">Ripristina l'azione annullata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished">Trasferisci gli elementi selezionati negli appunti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished">Copia gli elementi selezionati negli appunti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished">Posiziona sulla pagina gli elementi presenti negli appunti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation type="unfinished">Ricalcola il percorso dei conduttori ignorando le modifiche</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished">Creazione automatica dei conduttori</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished">Utilizzare la creazione automatica dei conduttori, quando possibile</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished">Colore di fondo del disegno bianco/grigio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished">Imposta il colore di fondo della pagina bianco oppure grigio</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished">Modifica le proprietà della pagina (dimensioni, informazioni del cartiglio, proprietà dei conduttori, ecc.)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Aggiungi una pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation type="unfinished">Mostra i vari progetti aperti con le linguette</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation type="unfinished">Mostra i vari progetti aperti nelle loro finestre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation type="unfinished">Disponi le finestre a mosaico</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation type="unfinished">Disponi le finestre a cascata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation type="unfinished">Permesso di selezionare gli elementi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished">Permette di visualizzare la pagina senza poterla modificare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation type="unfinished">Attiva il progetto seguente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Progetto precedente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation type="unfinished">Attiva il progetto precedente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished">Crea un nuovo progetto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished">Apre un progetto esistente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished">Chiude il progetto corrente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished">Salva il progetto corrente e tutte le sue pagine</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished">Salva il progetto corrente con un altro nome di file</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished">Aggiunge una riga</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished">Elimina una riga</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished">Aggiunge una colonna alla pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished">Elimina una colonna alla pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished">Ingrandisce la pagina in altezza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished">Restringe la pagina in altezza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished">Rimuove gli elementi selezionati dalla pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished">Ruota gli elementi ed i testi selezionati</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation type="unfinished">Ruota il testo selezionato di un angolo preciso</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished">Visualizza l'elemento selezionato nello schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished">Seleziona tutti gli elementi della pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished">Deseleziona tutti gli elementi della pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished">Deseleziona gli elementi selezionati e seleziona i non selezionati</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished">Ingrandisce la pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished">Rimpicciolisce la pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished">Adatta lo zoom per visualizzare gli elementi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation type="unfinished">Ripristina il livello di zoom predefinito</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished">Aggiunge un piano di terminali</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished">Profondità</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Apri un file</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7799,7 +8148,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7808,212 +8157,207 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished">Modifica l'elemento</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished">Modifica il campo di testo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished">Modifica l'immagine</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished">Modificare il conduttore</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished">Modifica l'oggetto selezionato</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished">Si è verificato un errore all'apertura del file %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Errore</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Proprietà del progetto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Barra di visualizzazione</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&File</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Elimina una pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Mostra o nascondi gli strumenti di visualizzazione</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Orientare i testi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Esporta nel formato CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation type="unfinished">Impossibile aprire il progetto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation type="unfinished">Il file %1 non sembra essere un progetto di QElectroTech. Perciò non può essere aperto.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Fare doppio clic per terminare la forma, clic destro per annullare l'ultimo punto</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Aggiungi un poligono</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Aggiungi una immagine</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Pulisci il progetto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Trova/sostituisci</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>Documenti &recenti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Mostra o nascondi la barra degli strumenti</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Visualizza il progetto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Mostra o no il pannello Elementi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Ingrandisci</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>Esporta (&X)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Visualizza (&g)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Modifica</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Aggiunge un campo di testo sulla pagina corrente</translation> </message> @@ -8021,12 +8365,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <context> <name>QETElementEditor</name> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> e</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Nessuna modifica</translation> </message> @@ -8201,14 +8545,14 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Errore</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished">Profondità</translation> @@ -8219,43 +8563,43 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Adatta alla finestra</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation type="unfinished">Parti</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished">[Modificato]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"> [sola lettura]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation type="unfinished">Editor di Elementi</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"><br>In assenza di terminale, l'elemento non potrà essere collegato ad altri per mezzo di conduttori.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished">La verifica di questo elemento ha generato</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8264,7 +8608,7 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8273,13 +8617,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished">Il file %1 non esiste.</translation> @@ -8291,220 +8635,220 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished">Visualizza</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation type="unfinished">Impossibile aprire il file %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation type="unfinished">Questo file non è un documento XML valido</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation type="unfinished">Errore</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation type="unfinished">Non hai il permesso per modificare questo elemento. Sarà aperto in sola lettura.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation type="unfinished">Impossibile salvare l'elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished">Impossibile aprire il file</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation type="unfinished">Ricarica l'elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation type="unfinished">Questo elemento è stato modificato dopo l'ultimo salvataggio. Ricaricandolo, le modifiche verranno perse. Ricaricare comunque?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Avviso</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">Elemento QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation type="unfinished">Elemento QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation type="unfinished">Salvare l'elemento corrente?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation type="unfinished">Vuoi salvare l'elemento %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished">Apri un file</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation type="unfinished">Elemento di QElectroTech (*.elmt);;File XML (*.xml);;Tutti i file (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation type="unfinished">Elemento inesistente.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation type="unfinished">Il percorso non corrisponde ad un elemento.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished">L'elemento non esiste.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Aggiungere un testo di elemento non modificabile negli schemi</translation> </message> @@ -8519,9 +8863,9 @@ veuillez patienter durant l'import...</source> <translation>&Apri da un file</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>La registrazione non è riuscita, @@ -8538,7 +8882,7 @@ le condizioni richieste non sono validi</translation> <translation>Incolla da ...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Avvisi</translation> </message> @@ -8553,8 +8897,8 @@ le condizioni richieste non sono validi</translation> <translation>Deseleziona tutto</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n parte selezionata.</numerusform> @@ -8562,23 +8906,23 @@ le condizioni richieste non sono validi</translation> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Terminale mancante</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Aggiungi un arco di cerchio</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Sembra che il file %1 che si è cercato di aprire non esista più.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salva come</translation> @@ -8594,17 +8938,17 @@ le condizioni richieste non sono validi</translation> <translation>Salva come</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Annulla</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Aggiungi un'ellisse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Rifai</translation> </message> @@ -8614,7 +8958,7 @@ le condizioni richieste non sono validi</translation> <translation>Zoom -</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Aggiungere un campo di testo dinamico</translation> </message> @@ -8639,12 +8983,12 @@ le condizioni richieste non sono validi</translation> <translation>Resetta lo zoom</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Aggiungi un poligono</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Errore</b> :<br>I riferimenti alla pagina devono avere un solo terminale.<br><b>Soluzione</b> :<br>Verificare che l'elemento ne possieda un solo</translation> </message> @@ -8659,7 +9003,7 @@ le condizioni richieste non sono validi</translation> <translation>Modificara il nome e le traduzioni dell'elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Terminale mancante</translation> </message> @@ -8669,12 +9013,12 @@ le condizioni richieste non sono validi</translation> <translation>&Apri</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Aggiungere un testo di elemento modificabile negli schemi</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Aggiungi testo</translation> </message> @@ -8684,12 +9028,12 @@ le condizioni richieste non sono validi</translation> <translation>Inverti la selezione</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Aggiungere un rettangolo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Errori</translation> </message> @@ -8699,17 +9043,17 @@ le condizioni richieste non sono validi</translation> <translation>&File</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Fare doppio clic per terminare la forma, Clic destro per annullare l'ultimo punto</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Aggiungi un terminale</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Disegna una linea</translation> </message> @@ -8729,9 +9073,9 @@ le condizioni richieste non sono validi</translation> <translation>Modifica (&E)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Registrazione fallita</translation> </message> @@ -8878,42 +9222,42 @@ le condizioni richieste non sono validi</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished">Progetto « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation type="unfinished">Progetto %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation type="unfinished">Progetto senza titolo</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation type="unfinished">%1 [sola lettura]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished">%1 [modificato]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8921,56 +9265,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation type="unfinished">Si è verificato un errore durante l'integrazione del modello.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation type="unfinished">Avviso</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Apertura progetto in corso...</b><br/>Impostazione dei riferimenti incrociati <</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Apertura progetto in corso...</b><br/>Creazione dei fogli :</p></translation> </message> @@ -9008,127 +9352,126 @@ Que désirez vous faire ?</source> <translation type="unfinished">Per duplicare questo modello, inserire il nome della copia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation type="unfinished">&Nuovo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation type="unfinished">Aperto da un file</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation type="unfinished">Salva come</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation type="unfinished">Salvare in un file</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation type="unfinished">Esci (&Q)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation type="unfinished">Cop&ia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation type="unfinished">Inc&olla</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation type="unfinished">Generare i loghi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation type="unfinished">Modificare le informazioni complementari</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation type="unfinished">Resetta lo zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation type="unfinished">Aggiungere una riga (&l)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation type="unfinished">Aggiungere una &colonna</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation type="unfinished">(&F)Unisci celle</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation type="unfinished">&Separa celle</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9147,155 +9490,156 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation type="unfinished">&File</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation type="unfinished">Visualizza (&g)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation type="unfinished">Strumenti</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation type="unfinished">Modifica</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation type="unfinished">Nessuna modifica</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished">Cancellazioni</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation type="unfinished">Proprietà della cella</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished">[Modificato]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished">[Solo lettura]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation type="unfinished">%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation type="unfinished">QElectrotech - Editor di modello di cartiglio</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation type="unfinished">%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Errore</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation type="unfinished">Apri un modello</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished">Apri un file</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished">Modelli di cartiglio QElectroTech (*%1);;File XML (*.xml);;Tutti i file (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation type="unfinished">Salva il modello come</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished">Modello di cartiglio QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Utilizzare questo campo libero per citare gli autori del cartiglio, la licenza o tutte le altre informazioni utili.</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salva come</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Modificare le informazioni complementari</translation> @@ -9389,17 +9733,17 @@ Que désirez vous faire ?</source> <translation>Non trovo il file di testo che contiene la licenza GNU/GPL - comunque sia la conosci a menadito, o no?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Per installare il plugin qet_tb_generator <br> Visita: <br> <a href='https://pypi.python.org/pypi/qet-tb-generator'> qet-tb-generator </a> <br> Richiede python 3.5 o successivo. <br> <B> <U> Prima installazione su Windows </B> </U> <br> 1. Installa, se richiesto, python 3.5 o successivo <br> Visita: <br> <a href='https://www.python.org/downloads/'> python.org </a> <br> 2. pip install qet_tb_generator <br> <B> <U> Aggiorna su Windows </B> </U> <br> python -m pip install --upgrade qet_tb_generator <br> >> l'utente può lanciare in un terminale questo script in questa cartella<br> C: \utenti\XXXX\AppData \Local\Programmi\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> @@ -9558,7 +9902,7 @@ Que désirez vous faire ?</source> <translation>Spostare %1 testi dell'elemento</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Selezionare un'immagine...</translation> </message> @@ -9583,7 +9927,7 @@ Que désirez vous faire ?</source> <translation>Campo di testo dinamico</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Impossibile caricare l'immagine.</translation> </message> @@ -9619,7 +9963,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9934,7 +10278,7 @@ La si vuole sostituire ?</translation> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Immagini (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> @@ -10049,7 +10393,7 @@ La si vuole sostituire ?</translation> <translation type="unfinished">Profondità</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Errore durante l'uso del plugin qet_tb_generator</translation> </message> @@ -10106,24 +10450,24 @@ La si vuole sostituire ?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Tipo</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">Commento</translation> @@ -10131,16 +10475,16 @@ La si vuole sostituire ?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10460,7 +10804,7 @@ La si vuole sostituire ?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>Questo è un errore nel codice</translation> @@ -10888,7 +11232,7 @@ La si vuole sostituire ?</translation> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -11077,6 +11421,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11123,52 +11472,303 @@ Aggiungi una nuova tabella o regola la tabella esistente per visualizzate tutte <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Eliminare un punto ad un poligono</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>una linea</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>una forma</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>un'ellisse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Modifica %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Aggiungere un punto</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Eliminare il punto corrente</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Dimensione</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>un rettangolo</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>un poligono</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Aggiungere un punto ad un poligono</translation> </message> @@ -12083,7 +12683,7 @@ Les autres champs ne sont pas utilisés.</source> <translation>Modulo</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Tipo</translation> </message> @@ -12093,169 +12693,226 @@ Les autres champs ne sont pas utilisés.</source> <translation>Modifica le proprietà di una primitiva</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Nessuno</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>A croce</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Pieno</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Stile</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Trattino</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Larghezza</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Tratto</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Orizzontale</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Diagonale avanti</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Tratto personalizzato</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Riempimento</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Blocca la posizione</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Poligono chiuso</translation> - </message> - <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normale</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Punteggiato</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Diagonale a croce</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Chiudi il poligono</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Trattino punto</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Spessore</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Trattino punto punto</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Modificare una forma semplice</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Densità 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Densità 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Densità 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Densità 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Densità 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Densità 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Densità 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Colore</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Modifica il riempimento di una forma</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Cambia il tratto di una forma</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Modifica le proprietà di una forma semplice</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Verticale</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Diagonale posteriore</translation> </message> diff --git a/lang/qet_ja.ts b/lang/qet_ja.ts index d3ebbe195..6a6a27af1 100644 --- a/lang/qet_ja.ts +++ b/lang/qet_ja.ts @@ -616,59 +616,59 @@ <translation>終値</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>プロジェクト状況:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>更新方針</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>導体</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>両方</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>新規だけ</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>既存だけ</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>無効</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>要素</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>フォリオ</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>既存</translation> </message> @@ -847,6 +847,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>列 :</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>追加 %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>画像</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">画像を選択...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">エラー</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">画像を読み込めません。</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1470,39 +1682,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>選択された端子を接続</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>無題</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">エラー</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,99 +2864,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>全般</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>要素 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>名前 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>フォリオ : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>種類 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>亜種 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>位置 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>回転 : %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>大きさ : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>端子 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>場所 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">位置を固定</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>パネル内を検索</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>要素を編集</translation> </message> @@ -4543,7 +4760,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>これはフォリオに適用できる表題欄テンプレートです。</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [プロジェクトで未使用]</translation> </message> @@ -4774,6 +4991,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">垂直</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4783,23 +5023,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">幅</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>位置を固定</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>画像の大きさ</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation></translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>画像の大きさを変更</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">プレビュー</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6567,118 +6905,118 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>プロジェクトは変更されています。 変更を保存しますか?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>名前を付けて保存</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>無題</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>QElectroTech プロジェクト (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>作業中のプロジェクトがありません</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>このフォリオを削除しますか?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>読み取り専用プロジェクト</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>このプロジェクトは読み取り専用です。このため整理できません。</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>プロジェクトで使用されていないテンプレートを削除</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>プロジェクトで使用されていない要素を削除</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>空のカテゴリの削除</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>プロジェクトを整理</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>フォリオを追加</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>このプロジェクトにはフォリオがありません</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>プロジェクトを開きます ...</b><br/>フォリオのタブの作成 :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>プロジェクト</translation> @@ -6767,166 +7105,166 @@ Voulez-vous enregistrer les modifications ?</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech の設定</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>読込中...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>読込中... システム・トレイ・アイコン</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>終了 (&Q)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>非表示 (&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>表示 (&S)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>回路図エディタを非表示 (&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>回路図エディタを表示 (&S)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>要素エディタを非表示 (&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>要素エディタを表示 (&S)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>表題欄テンプレート・エディタを非表示 (&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>表題欄テンプレート・エディタを表示 (&S)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>新規の回路図エディタ (&N)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>新規の要素エディタ (&N)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>QElectroTech を終了</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>QElectroTech をシステム・トレイに最小化</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>QElectroTech を復元</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>回路図エディタ</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>要素エディタ</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>表題欄テンプレート・エディタ</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>次の復元ファイルが見つかりました。<br>これを開きますか?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>以下の復元ファイルが見つかりました。<br>これらを開きますか?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>復元ファイル</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>使用法: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6935,7 +7273,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6952,34 +7290,34 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR 要素コレクションのディレクトリを指定 </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR 表題欄テンプレート・コレクションのディレクトリを指定 </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR 設定ディレクトリを指定 </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR 言語ファイルのディレクトリを指定 @@ -6989,916 +7327,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>プロジェクト</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>コレクション</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>変更なし</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>操作をクリックすることで図への変更を元に戻します</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>このパネルは現在のフォリオに適用された様々な変更のリストです。変更をクリックすると、それが適用された直後の状態にフォリオを戻します。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>復元</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>エクスポート (&E)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>現在のフォリオを別の形式でエクスポート</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>印刷</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>現在のプロジェクトのフォリオを印刷</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>終了 (&Q)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>QElectroTech を終了</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>元に戻す</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>直前の操作を元に戻す</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>やり直す</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>元に戻した操作をやり直す</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>切り取り (&T)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>コピー (&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>貼り付け (&P)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>選択要素をクリップボードに移動</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>選択要素をコピー</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>クリップボードからフォリオに要素を貼り付け</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>導体の整頓</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>ユーザの変更を無視して導体の経路をリセット</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>導体の自動生成</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>可能であれば導体を自動生成</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>背景色 白/灰</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>フォリオの背景色を白または灰で表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>グリッド表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>フォリオのグリッドの表示/非表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>フォリオの属性</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>フォリオの属性の編集 (大きさ, 表題欄の情報, 導体の属性, ...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>プロジェクトの属性</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>フォリオを追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>このフォリオを削除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>プロジェクトを整理</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>CSV 形式でエクスポート</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>部品表を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>概要を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>端子台作成プラグインを起動</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>線名リストをエクスポート</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>内部のプロジェクト・データベースをエクスポート</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>タブを使用</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>開かれたプロジェクトをタブで表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>ウィンドウを使用</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>開かれたプロジェクトをウィンドウで表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>並べて (&T)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>ウィンドウを並べて表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>重ねて (&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>ウィンドウを重ねて表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>選択モード</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>要素の選択が可能</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>閲覧モード</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>フォリオを修正せず閲覧だけを許可</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>次のプロジェクト</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>次のプロジェクトを作業中に</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>前のプロジェクト</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>前のプロジェクトを作業中に</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>新規作成 (&N)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>開く (&O)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>保存 (&S)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>名前を付けて保存</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>閉じる (&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>新規プロジェクトを作成</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>既存のプロジェクトを開く</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>現在のプロジェクトを閉じる</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>現在のプロジェクトとその全てのフォリオを保存</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>現在のプロジェクトを別の名前で保存</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>列を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>列を削除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>行を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>行を削除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>フォリオに列を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>フォリオから最終列を削除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>フォリオに行を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>フォリオから最終行を削除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>削除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>回転</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>テキストの向きを選択</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>パネル内を検索</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>選択項目を編集</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>選択テキストをグループ化</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>選択要素をフォリオから削除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>選択された要素とテキストを回転</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>選択テキストを指定した角度に回転</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>選択要素をパネル内で検索</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>全て選択</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>選択を解除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>選択を反転</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>フォリオの全ての要素を選択</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>フォリオの全ての要素の選択を解除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>要素の選択を反転</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>ズームイン</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>ズームアウト</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>内容に合わせてズーム</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>全体に合わせてズーム</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>ズームのリセット</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>フォリオを拡大</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>フォリオを縮小</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>図枠は無視してフォリオの内容に合わせてズーム</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>フォリオの領域に合わせてズーム</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>既定のズームに戻す</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>テキスト領域を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>画像を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>線を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>矩形を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>楕円を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>折れ線を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>現在のフォリオにテキスト領域を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>現在のフォリオに画像を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>現在のフォリオに線を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>現在のフォリオに矩形を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>現在のフォリオに楕円を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>現在のフォリオに折れ線を追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>検索 / 置換</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>ツール</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>図</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>追加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>重なり</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>ファイル (&F)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>編集 (&E)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>プロジェクト (&P)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>表示 (&D)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>ウィンドウ (&W)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>最近のファイル (&L)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>メインツールバーの表示/非表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>表示ツールバーの表示/非表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>図ツールバーの表示/非表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>要素パネルの表示/非表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>復元リストの表示/非表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>プロジェクトを表示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>プロジェクト %1 はディレクトリ %2 に保存されています。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>ファイルを開く</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech プロジェクト (*.qet);;XML ファイル (*.xml);;全てのファイル (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>ファイルを開けません</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>開こうとしているファイル %1 は存在しないか、既に存在しないようです。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>開こうとしているファイルは読めないため開けません。ファイルの許可を確認してください。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>ファイルを読み取り専用で開く</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>開こうとしているプロジェクトに書き込めないようです。読み取り専用で開きます。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>プロジェクトを開けません</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>ファイル %1 は QElectroTech のプロジェクト・ファイルではないようです。このため開けません。</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7906,7 +8255,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7914,106 +8263,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>ダブルクリックで完了、右クリックで最後の点をキャンセル</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>グループ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>要素を編集</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>テキスト領域を編集</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>画像を編集</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>導体を編集</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>選択対象を編集</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>ファイル %1 を開く際にエラーが発生しました。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>プロジェクト « %1 » を作業中に</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>エラー</translation> @@ -8262,17 +8606,17 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>要素の属性を編集</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>元に戻す</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>やり直す</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>重なり</translation> @@ -8298,73 +8642,73 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>ズームのリセット</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>線を追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>矩形を追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>楕円を追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>多角形を追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>テキストを追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>弧を追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>端子を追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>動的なテキスト領域を追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>ダブルクリックで完了、右クリックで最後の点をキャンセル</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>図に編集不可能な要素テキストを追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>図に編集可能な要素テキストを追加</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>部品</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">警告</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> @@ -8390,66 +8734,66 @@ veuillez patienter durant l'import...</source> <translation>読み込んで貼り付け...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[変更あり]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [読み取り専用]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>変更なし</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>要素エディタ</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n 選択部品.</numerusform> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>端子がありません</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>端子がないと他の要素に導体で接続できません。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>端子がありません</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br> <b> エラー </ b>: <br> フォリオ参照は端子が1つでなければなりません <br> <b> 解決法 </ b> :<br> 要素の端子が1つだけであることを確認してください</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>この要素は検証されました</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8457,12 +8801,12 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> と</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8470,23 +8814,23 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>エラー</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>警告</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>ファイル %1 が存在しません。</translation> @@ -8498,237 +8842,237 @@ veuillez patienter durant l'import...</source> <translation type="unfinished">表示</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>ファイル %1 を開けません。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>このファイルは有効な XML 文書ではありません</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>エラー</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>読み取り専用</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>この要素を変更する権限がありません。読み取り専用で開きます。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>エラー</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>このファイルに書き込めません</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>要素を保存できません</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>ファイルを開けません</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>開こうとしているファイル %1 は存在しないか、既に存在しないようです。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>要素を再読込</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>この要素は最後に保存されてから変更されました。再読込を行うと変更が失われます。本当にこの要素の再読込を行いますか?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">QElectroTech 要素 (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>保存に失敗しました</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>保存に失敗しました, 条件を満たしません</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>名前を付けて保存</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech 要素 (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>現在の要素を保存しますか?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>要素 %1 を保存しますか?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>ファイルを開く</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech 要素 (*.elmt);;XML ファイル (*.xml);;全てのファイル (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>存在しない要素。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>選ばれたパスは要素に対応しません。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>要素が存在しません。</translation> @@ -8876,42 +9220,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>プロジェクト « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>プロジェクト %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>無題のプロジェクト</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [読み取り専用]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [変更あり]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8919,56 +9263,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>テンプレートを統合する際にエラーが発生しました。</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>警告</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>プロジェクトを開きます ...</b><br/>フォリオの作成</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>プロジェクトを開きます ...</b><br/>相互参照の構成</p></translation> </message> @@ -9006,127 +9350,126 @@ Que désirez vous faire ?</source> <translation>このテンプレートを複製するには、複製の名前を入力してください</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>新規作成 (&N)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>開く (&O)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>ファイルから開く</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>保存 (&S)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>名前を付けて保存</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>ファイルへ保存</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>終了 (&Q)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>切り取り (&T)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>コピー (&C)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>貼り付け (&P)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>ロゴの管理</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>補足情報を編集</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>ズームイン</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>ズームアウト</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>全体に合わせてズーム</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>ズームのリセット</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>行を追加 (&R)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>列を追加 (&C)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>セルの結合 (&M)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>セルを分割 (&S)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9145,156 +9488,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>ファイル (&F)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>編集 (&E)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>表示 (&D)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>ツール</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>編集</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>表示</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>変更なし</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>復元</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>セルの属性</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[変更あり]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[読み取り専用]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - 表題欄テンプレート・エディタ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">エラー</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>表題欄テンプレートを開く</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>ファイルを開く</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech 表題欄テンプレート (*%1);;XML ファイル (*.xml);; 全てのファイル (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>テンプレートを名前を付けて保存</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>名前を付けて保存</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech 表題欄テンプレート (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>補足情報の編集</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>この自由欄をテンプレートの作成者、ライセンス、他の有用と考えられる情報などに利用できます。</translation> </message> @@ -9425,7 +9769,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9506,17 +9850,17 @@ Que désirez vous faire ?</source> <translation>追加 </translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>画像を選択...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>画像ファイル (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>画像を読み込めません。</translation> </message> @@ -9964,22 +10308,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished">重なり</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>qet_tb_generator プラグインをインストールするには<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a>を参照してください。<br>python 3.5 以降が必要です。<br><B><U> Windows での最初のインストール</B></U><br>1. 必要であれば python 3.5 以降をインストール<br><a href='https://www.python.org/downloads/'>python.org</a> を参照してください。<br>2. pip install qet_tb_generator<br><B><U> Windows での更新</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>ユーザはターミナルで次のディレクトリの中でスクリプトを実行できます。<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>qet_tb_generator プラグインの起動でエラー</translation> </message> @@ -10098,24 +10442,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">コメント</translation> @@ -10123,16 +10467,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10690,7 +11034,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -10920,7 +11264,7 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -11064,6 +11408,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11110,52 +11459,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>点を追加</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>この点を削除</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">大きさ</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>多角形に点を追加</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>多角形から点を削除</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>変更 %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>線</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>矩形</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>楕円</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>折れ線</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>図形</translation> </message> @@ -12073,176 +12673,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">幅</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>線</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>線種</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>太さ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>色</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>実線</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>破線</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>点線</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>1点鎖線</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>2点鎖線</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>カスタム鎖線</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>塗りつぶし</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>なし</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>単色</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>濃淡 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>濃淡 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>濃淡 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>濃淡 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>濃淡 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>濃淡 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>濃淡 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>水平</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>垂直</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>格子</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>斜め右上</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>斜め左上</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>対角格子</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>種類</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>位置を固定</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>閉じた多角形</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>図形の線を変更</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>図形の塗りつぶしを変更</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>多角形を閉じる</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>単純な図形の変更</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>単純な図形の属性を変更</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_ko.ts b/lang/qet_ko.ts index 846b44e32..a139c992f 100644 --- a/lang/qet_ko.ts +++ b/lang/qet_ko.ts @@ -586,7 +586,7 @@ <translation>양식</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>프로젝트 상태:</translation> </message> @@ -621,54 +621,54 @@ <translation>끝</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>업데이트 정책</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>도선</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>신규만</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>모두</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>사용 안 함</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>요소</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>기존만</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>시트</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>기존</translation> </message> @@ -845,6 +845,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>시트 크기</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1411,13 +1419,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>%1 추가</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>이미지</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">이미지 선택...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">오류</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">이미지를 불러올 수 없습니다.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1468,39 +1680,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>선택한 단자 연결</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>제목 없음</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">오류</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2040,7 +2252,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2650,97 +2862,102 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>일반</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished">이름 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished">시트 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">유형: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished">하위 종류 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished">위치 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished">크기 : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished">단자 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished">설치 위치 : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>패널에서 찾기</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>요소 편집</translation> </message> @@ -4517,7 +4734,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>이것은 시트에 적용할 수 있는 표제란 템플릿입니다.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [프로젝트에서 사용되지 않음]</translation> </message> @@ -4747,6 +4964,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4756,23 +4996,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">너비</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">높이</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>위치 잠금</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>이미지 크기</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>이미지 크기 변경</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">미리보기</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6530,117 +6868,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>프로젝트에서 사용하지 않는 요소 삭제</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>빈 카테고리 삭제</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>제목 없음</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>QElectroTech 프로젝트 (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>이 폴리오를 삭제할까요?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>읽기 전용 프로젝트</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>이 프로젝트는 읽기 전용이므로 정리할 수 없습니다.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>프로젝트에서 사용하지 않는 타이틀 블록 템플릿 삭제</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>프로젝트 정리</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>폴리오 추가</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>프로젝트 시작으로 이동</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>프로젝트 끝으로 이동</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>이 프로젝트에는 폴리오가 없습니다</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>다른 이름으로 저장</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>표시된 프로젝트가 없습니다</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>프로젝트를 여는 중...</b><br/>폴리오 탭 생성:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>프로젝트</translation> @@ -6681,143 +7019,143 @@ Voulez-vous enregistrer les modifications ?</source> <translation>사용자 타이틀 블록</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>종료(&Q)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>숨기기(&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>표시(&S)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>모든 도면 편집기 숨기기(&D)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>모든 도면 편집기 표시(&D)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>모든 요소 편집기 숨기기(&E)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>모든 요소 편집기 표시(&E)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>모든 타이틀 블록 템플릿 편집기 숨기기(&T)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>모든 타이틀 블록 템플릿 편집기 표시(&T)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>새 도면 편집기(&N)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>새 요소 편집기(&N)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>QElectroTech를 종료합니다</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>QElectroTech를 시스템 트레이로 최소화</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>QElectroTech 복원</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>도면 편집기</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>요소 편집기</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>타이틀 블록 템플릿 편집기</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>다음 복구 파일을 찾았습니다.<br>열겠습니까?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>다음 복구 파일들을 찾았습니다.<br>열겠습니까?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>복구 파일</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>사용법: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6828,31 +7166,31 @@ Options disponibles : <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation type="unfinished"></translation> @@ -6906,31 +7244,31 @@ Options disponibles : <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech 설정</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>로딩 중...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>로딩 중... 시스템 트레이 아이콘</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -6939,887 +7277,898 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>표시(&A)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>요소 패널 표시/숨김</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>열 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>계단식 배열(&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>붙여넣기(&P)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>복사(&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>잘라내기(&T)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>선택 해제</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>편집(&E)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>열 제거</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>저장(&S)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>다른 이름으로 저장</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>내보내기(&X)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>창(&N)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>닫기(&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>파일(&F)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>인쇄</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>선택 반전</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>선택 모드</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>이 패널은 현재 시트에서 수행된 다양한 변경 사항을 나열합니다. 변경 항목을 클릭하면 해당 변경이 적용된 직후의 상태로 되돌릴 수 있습니다.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>배경색 흰색/회색</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>시트 배경색을 흰색 또는 회색으로 표시합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>격자 표시</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>시트의 격자를 표시하거나 숨깁니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>시트 속성</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>시트 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>시트 삭제</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>보기 모드</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&바둑판식 배열</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>PDF로 내보내기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>현재 프로젝트의 시트를 하나 이상 내보냅니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>CSV로 내보내기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>단자대 관리자(DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>단자대 생성 플러그인 실행</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>도선(와이어) 이름 목록 내보내기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>프로젝트 내부 데이터베이스 내보내기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&새로 만들기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>새 프로젝트를 생성합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>기존 프로젝트를 엽니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>현재 프로젝트를 닫습니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>현재 프로젝트와 모든 시트를 저장합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>현재 프로젝트를 다른 파일 이름으로 저장합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>행 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>행 제거</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>시트에 열을 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>시트에서 열을 제거합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>시트 높이를 늘립니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>시트 높이를 줄입니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>선택한 요소를 시트에서 제거합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>시트의 모든 요소를 선택합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>시트의 모든 선택을 해제합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>시트를 확대합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>시트를 축소합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>프레임과 무관하게 시트의 전체 내용을 표시하도록 확대/축소를 맞춥니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>시트 프레임에 정확히 맞도록 확대/축소를 맞춥니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>선 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>사각형 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>타원 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>폴리라인 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>현재 시트를 다른 형식으로 내보냅니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>현재 프로젝트의 시트를 하나 이상 인쇄합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>깊이</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>그룹</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>클립보드의 요소를 시트에 붙여넣습니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>시트 속성(치수, 표제란 정보, 도선 속성 등)을 편집합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>시트를 수정하지 않고 보기만 할 수 있습니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>도구</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&열기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>파일 열기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>확대/축소 초기화</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>회전</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&종료</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>삭제</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>모두 선택</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>화면에 맞춤</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>축소</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>확대</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>실행 취소</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>다시 실행</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>도선 초기화</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>주 도구 모음을 표시하거나 숨깁니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>표시 도구 모음을 표시하거나 숨깁니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>도면 도구 모음을 표시하거나 숨깁니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>표시</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>도면</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>텍스트 필드 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>변경 사항 없음</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>변경(실행 취소) 목록을 표시하거나 숨깁니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>선택한 항목 편집</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>선택한 텍스트 그룹화</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>선택한 요소와 텍스트를 회전합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>선택한 텍스트를 지정한 각도로 회전합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>찾기/바꾸기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&프로젝트</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&최근 열었던 파일</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>프로젝트 %1이(가) 다음 폴더에 저장되었습니다: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>열려는 파일에 읽기 권한이 없어 열 수 없습니다. 파일 권한을 확인하세요.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>열려는 프로젝트에 쓰기 권한이 없어 읽기 전용으로 열립니다.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>탭으로 표시</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>창으로 표시</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>프로젝트 표시</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>프로젝트 속성</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>프로젝트 정리</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>프로젝트 열기 실패</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>파일 %1은(는) QElectroTech 프로젝트 파일이 아닌 것으로 보입니다. 따라서 열 수 없습니다.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>실행 취소</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>작업을 클릭하면 도면 편집 상태를 이전으로 되돌릴 수 있습니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>텍스트 방향 설정</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>패널에서 찾기</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>이미지 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>목차 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>내용에 맞게 확대/축소</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>QElectroTech를 종료합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>이전 작업을 취소합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>취소한 작업을 다시 실행합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>선택한 요소를 클립보드로 잘라냅니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>선택한 요소를 클립보드에 복사합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>선택을 반전합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>패널에서 선택한 항목을 찾습니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>사용자 변경을 무시하고 도선 경로를 다시 계산합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>도선 자동 생성</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>프로젝트</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>컬렉션</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>가능한 경우 도선 자동 생성을 사용합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>기본 확대/축소로 복원합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>열려 있는 프로젝트를 하위 창으로 표시합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>부품표(BOM) 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>열려 있는 프로젝트를 탭으로 표시합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>요소를 선택할 수 있습니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>단자 배치도 추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>현재 시트에 텍스트 필드를 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>현재 시트에 이미지를 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>현재 시트에 선을 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>현재 시트에 사각형을 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>현재 시트에 타원을 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>현재 시트에 폴리라인을 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>현재 시트에 단자대 배치도를 추가합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>추가</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech 프로젝트 (*.qet);;XML 파일 (*.xml);;모든 파일 (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>파일을 열 수 없음</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>열려는 파일 %1이(가) 존재하지 않거나 더 이상 존재하지 않습니다.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>읽기 전용으로 프로젝트 열기</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7827,7 +8176,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7835,135 +8184,130 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>더블 클릭으로 도형을 완료하고, 오른쪽 클릭으로 마지막 점을 취소합니다</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>요소 편집</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>텍스트 필드 편집</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>이미지 편집</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>도선 편집</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>선택한 개체 편집</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>파일 %1을(를) 여는 동안 오류가 발생했습니다.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>프로젝트 « %1 »을(를) 활성화합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>오류</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>창을 바둑판식으로 배열합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>창을 계단식으로 배열합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>다음 프로젝트</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>이전 프로젝트</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>다음 프로젝트를 활성화합니다</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>이전 프로젝트를 활성화합니다</translation> @@ -8167,53 +8511,53 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>크기 조정할 요소 가져오기</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>선 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>타원 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>다각형 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>텍스트 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>호 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>단자 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>실행 취소</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>다시 실행</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>단자가 없으면, 이 요소는 도체를 통해 다른 요소에 연결할 수 없습니다.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>변경 없음</translation> </message> @@ -8258,13 +8602,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>작성자 정보 편집</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>부품</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>깊이</translation> @@ -8280,12 +8624,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>요소 속성 편집</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>동적 텍스트 필드 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>더블클릭하여 도형 종료, 오른쪽 클릭으로 마지막 점 취소</translation> </message> @@ -8310,55 +8654,55 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>다음에서 붙여넣기...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[수정됨]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [읽기 전용]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>요소 편집기</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n개 부품 선택됨.</numerusform> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>프리미티브가 너무 많아 목록을 생성하지 못했습니다: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>단자 없음</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>오류</b> :<br>폴리오 참조 요소는 단자를 1개만 가져야 합니다.<br><b>해결</b> :<br>요소에 단자가 1개만 있는지 확인하십시오</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>이 요소 검사 결과</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8366,32 +8710,32 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> 그리고</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>오류</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>단자 없음</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>도면에서 편집할 수 없는 요소 텍스트 추가</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>도면에서 편집할 수 있는 요소 텍스트 추가</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8399,13 +8743,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>파일 %1이(가) 존재하지 않습니다.</translation> @@ -8417,247 +8761,247 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>표시</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>파일 %1을(를) 열 수 없습니다.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>이 파일은 유효한 XML 문서가 아닙니다</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>오류</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>읽기 전용 편집</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>이 요소를 수정할 권한이 없습니다. 따라서 읽기 전용으로 열립니다.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>오류</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>이 파일에 쓸 수 없습니다</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>요소를 저장할 수 없습니다</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>경고</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>크기 조정할 요소 가져오기</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>QElectroTech 요소 (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>파일을 열 수 없습니다</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>열려고 하는 파일 %1이(가) 존재하지 않거나 더 이상 존재하지 않는 것 같습니다.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>저장 실패</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>파일 열기</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech 요소 (*.elmt);;XML 파일 (*.xml);;모든 파일 (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>요소 다시 불러오기</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>경고</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>이 요소는 마지막 저장 이후 수정되었습니다. 다시 불러오면 수정 내용이 사라집니다. 정말로 이 요소를 다시 불러오시겠습니까?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>다른 이름으로 저장</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech 요소 (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>현재 요소를 저장하시겠습니까?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>요소 %1을(를) 저장하시겠습니까?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>존재하지 않는 요소.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>요소가 존재하지 않습니다.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>선택한 가상 경로는 요소와 일치하지 않습니다.</translation> @@ -8678,7 +9022,7 @@ veuillez patienter durant l'import...</source> <translation>&붙여넣기</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>사각형 추가</translation> </message> @@ -8825,48 +9169,48 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>경고</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>프로젝트 « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>프로젝트 %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>제목 없는 프로젝트</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [읽기 전용]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [수정됨]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8874,51 +9218,51 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>템플릿 통합 중 오류가 발생했습니다.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>열려고 하는 프로젝트는 QElectroTech %1 버전과 부분적으로만 호환됩니다. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>경고 </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>프로젝트 여는 중...</b><br/>폴리오 생성 중</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>프로젝트 여는 중...</b><br/>교차 참조 설정 중</p></translation> </message> @@ -8956,139 +9300,138 @@ Que désirez vous faire ?</source> <translation>이 템플릿을 복제하려면 복사본의 이름을 입력하십시오</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&새로 만들기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&열기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>파일에서 열기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&저장</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>다른 이름으로 저장</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>파일로 저장</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&종료</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>로고 관리</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>확대</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>축소</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>화면에 맞춤</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>확대/축소 초기화</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>다른 이름으로 저장</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech 표제란 템플릿 (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>셀 &병합</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>잘라내기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&복사</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&붙여넣기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>추가 정보 편집</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>&행 추가</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>&열 추가</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>셀 &분할</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9107,144 +9450,145 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&파일</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&편집</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&보기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>도구</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>편집</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>보기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>변경 없음</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>실행 취소</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>셀 속성</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[수정됨]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[읽기 전용]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - 표제란 템플릿 편집기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">오류</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>표제란 템플릿 열기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>파일 열기</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech 표제란 템플릿 (*%1);;XML 파일 (*.xml);;모든 파일 (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>템플릿 다른 이름으로 저장</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>추가 정보 편집</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>이 자유 입력란에는 표제란의 작성자, 라이선스 또는 기타 유용하다고 판단되는 정보를 기재할 수 있습니다.</translation> </message> @@ -9808,18 +10152,18 @@ Que désirez vous faire ?</source> <translation>프로젝트 속성</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>이미지 선택...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>이미지 파일 (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9828,7 +10172,7 @@ Que désirez vous faire ?</source> <translation>오류</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>이미지를 불러올 수 없습니다.</translation> </message> @@ -10259,24 +10603,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>주석</translation> @@ -10284,16 +10628,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10590,22 +10934,22 @@ Voulez-vous la remplacer ?</source> <translation>도체 생성</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>qet_tb_generator 플러그인을 설치하려면<br>방문 :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Python 3.5 이상이 필요합니다.<br><B><U> Windows에서 최초 설치</B></U><br>1. 필요 시 Python 3.5 이상을 설치합니다<br> 방문 :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Windows에서 업데이트</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>사용자는 터미널에서 이 디렉터리에 있는 이 스크립트를 실행할 수 있습니다<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>qet_tb_generator 플러그인을 설치하려면<br>방문 :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> macOS에서 최초 설치</B></U><br>1. 필요 시 Python 3.11 번들만 설치합니다, <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 Profile.command 스크립트를 실행합니다<br>프로그램이 qet-tb-generator 플러그인을 찾기 위해 하드코딩된 PATH를 사용하기 때문입니다 <br> 방문 :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>설치 방법</a><br>2. pip3 install qet_tb_generator<br><B><U> macOS에서 업데이트</B></U><br> pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>qet_tb_generator 플러그인을 설치하려면<br>방문 :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Python 3.5 이상이 필요합니다.<br><br><B><U> Linux에서 최초 설치</B></U><br>1. pip3가 설치되어 있는지 확인합니다: pip3 --version<br>설치되어 있지 않다면 다음 명령으로 설치하세요: sudo apt-get install python3-pip<br>2. 프로그램 설치: sudo pip3 install qet_tb_generator<br>3. 프로그램 실행: qet_tb_generator<br><br><B><U> Linux에서 업데이트</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>qet_tb_generator 플러그인 실행 오류</translation> </message> @@ -10849,7 +11193,7 @@ Voulez-vous la remplacer ?</source> <translation>요소 열기</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>DXF 파일 가져오기</translation> </message> @@ -10867,7 +11211,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>코드 오류입니다</translation> @@ -11007,6 +11351,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11051,55 +11400,306 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>도형</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>선</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>점 추가</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>이 점 삭제</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">크기</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>다각형에 점 추가</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>다각형의 점 삭제</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>%1 수정</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>사각형</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>타원</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>폴리라인</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -11974,150 +12574,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>폼</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>선</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>두께</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>기본</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>파선</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>점선</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>파선 및 점</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>파선 점 점</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>사용자 정의 파선</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>유형</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>색상</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>채우기</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>스타일</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>없음</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">너비</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">높이</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>채움</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>밀도 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>밀도 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>밀도 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>밀도 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>밀도 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>밀도 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>밀도 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>수평</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>수직</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>십자</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>역대각선</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>정대각선</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>대각 십자</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>위치 고정</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>닫힌 다각형</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12126,30 +12753,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>도형 선 편집</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>도형 채우기 편집</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>다각형 닫기</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>단순 도형 수정</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>단순 도형 속성 수정</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_mn.ts b/lang/qet_mn.ts index 89c06d9cf..edc3c1d6d 100644 --- a/lang/qet_mn.ts +++ b/lang/qet_mn.ts @@ -618,59 +618,59 @@ <translation>...руу4</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Төслийн байдал </translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Чиг шугамыг шинэчлэх </translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Чиглүүлэгч шугам</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Хоёулаа </translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Зөвхөн шинэ</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Зөвхөн одоо байгаа </translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Ажиллагаагүй болох </translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Элемент</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Хуудас</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Оршин байгаа</translation> </message> @@ -847,6 +847,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Баганууд:</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>оруулах %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>дүрслэл</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Алдаа</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1470,39 +1682,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Сонгогдсон оролт гаралтуудыг холбох </translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Гарчиггүй </translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Алдаа</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,98 +2864,103 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Ерөнхий</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Элемент </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Нэр : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Хуудас : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">Төрөл: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Байрлал : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Эргэлт : %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Хэмжээсүүд : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Холболтууд : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Байршил : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Хайх</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Элементийг өөрчлөх</translation> </message> @@ -4523,7 +4740,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Энэ бол хуудсанд нэмж оруулах боломжтой нэрний загвар юм.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [Төсөлд ашиглаагүй]</translation> </message> @@ -4753,6 +4970,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Босоо</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4762,23 +5002,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Өргөн</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Байршлыг түгжих</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Зургийн хэмжээ</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Зургийн хэмжээг өөрчлөх</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Урьдчилан харах</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6524,7 +6862,7 @@ Les variables suivantes sont incompatibles : <message> <location filename="../sources/print/projectprintwindow.cpp" line="582"/> <source>Folio sans titre</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Гарчиггүй хуудас</translation> </message> <message> <location filename="../sources/print/projectprintwindow.cpp" line="755"/> @@ -6540,117 +6878,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation type="unfinished">Төслийг арилгах</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished">Хуудас нэмэх</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation type="unfinished"></translation> @@ -6739,166 +7077,166 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech-г тохируулах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Ачааллаж байна...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Ачааллаж байна... Systray icon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Гарах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Нуух</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Харуулах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Схем засалтыг нуух</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Схемийн тохиргоог харуулах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Элемент засагчийг нуух</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Элементийн тохиргоог харуулах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Нэрний загвар засагчийг нуух</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Хаягийн блокын тохиргоог харуулах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Шинэ элементийг засагч</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>QElectroTech-г хаах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>QElectroTech-г systray-руу багасгах</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>QElectroTech-г сэргээх</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Схем засварлагчид</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Элемент засварлагчид</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Гарчигийн загвар засварлагчид</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Сэргээх файл олдлоо,<br>Үүнийг нээмээр байна уу ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Сэргээх файлууд олдлоо,<br>Эдгээрийг нээмээр байна уу ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Файл сэргээх</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Хэрэглээ: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6907,7 +7245,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6918,34 +7256,34 @@ Options disponibles : <translation></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --энгийн-элементүүд-dir=DIR Элементүүдийн цуглуулгын лавлахыг тодорхойлох </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --энгийн-tbt-dir=DIR Гарчигийн загваруудын цуглуулгын лавлахыг тодорхойлох </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Тохиргооны лавлахыг тодорхойлох </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Хэлний файлуудын лавлахыг тодорхойлох @@ -6955,916 +7293,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Төслүүд</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Цуглуулгууд</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Тохиргоо байхгүй</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Буцаах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Гаргах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Одоогийн хуудсыг өөр форматаар гаргах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Хэвлэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Одоогийн төслийн нэг болон түүнээс дээш хуудсыг хэвлэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Гарах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>QElectroTech-г хаах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Буцаах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Өмнөх үйлдлүүдээ буцаах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Буцаах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>хийгдээгүй үйлдлийг сэргээх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Арилгаж хуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Хуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Хуулж тавих</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Сонгосон элементүүдийг хуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Дамжуулагчдыг хуучин төлөвт оруулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation type="unfinished">Дамжуулагчийн замыг хэвийн болгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Дамжуулагчийг автоматаар үүсгэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Боломжтой үед дамжуулагчийг автоматаар үүсгэгчийг хэрэглэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Арын өнгө цагаан / саарал</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Хуудасны арын өнгийг цагаан эсвэл саарлаар харуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Хэрээсийг харуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Хуудасны хэрээсийг харуулах эсвэл нуух</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Хуудасны тохиргоо</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Төслийн тохиргоо</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Хуудас нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Энэ хуудсыг устгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Төслийг арилгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Товч тайлбар нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>CSV-руу гаргах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Нэршил нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Холболтын блок үүсгэх Plugin-г ажиллуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Утаснуудын нэрсийн жагсаалтыг гаргах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Төслийн дотоод мэдээллийн санг гаргах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Бүх нээгдсэн төслүүдийг харуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Бүх нээгдсэн төслүүдийг цонхнуудад харуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Tile</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Цонхнуудыг баганан маягаар зохицууулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Үргэлжилсэн</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Цонхнуудыг давхарласан маягаар зохицуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Сонгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Элементүүдийг сонгохыг зөвшөөрөх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Зөөх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Хуудсыг засварлахгүйгээр харахыг зөвшөөрөх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Дараагийн төсөл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Дараагийн төслийг идэвхжүүлэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Өмнөх төсөл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Өмнөх төслийг идэвхжүүлэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Шинэ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Нээх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Хадгалах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Өөрчилт хийж хадгалах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Хаах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Шинэ төсөл үүсгэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Байгаа файлыг нээх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Одоогийн төслийг хаах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Одоогийн төсөл болон түүний бүх хуудаснуудыг хадгалах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Одоогийн файлыг өөр нэрээр хадгалах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Багана нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Баганыг арилгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Эгнээ нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Эгнээг арилгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Хуудсанд багана нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Хуудаснаас баганыг арилгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Хуудасны өндрийг ихэсгэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Хуудасны өндрийг багасгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Устгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Эргүүлэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Текстийн чигийг сонгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Сонгосон нэгжийг засварлах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Сонгосон текстүүдийг нэгтгэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Хуудаснаас сонгосон элементүүдийг арилгах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Сонгосон элементүүд болон текстүүдийг эргүүлэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Сонгосон текстийг тодорхой өнцгөөр эргүүлэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Сонолтыг олох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Бүгдийг сонгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Юу ч сонгохгүй байх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Эсрэгээр сонгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Хуудсан дээрх бүх элементийг сонгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Хуудсан дээрх бүх элементийг сонгохгүй байх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Элементийн сонголтуудыг урвуу болгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Ойртуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Холдуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Таталт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Таталтыг хэвийн болгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Хуудсыг томсгох</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Хуудсыг жижгэсгэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Хэвийн татаж харах түвшинг сэргээх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Текстийн талбайг нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Зураг нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Зураас нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Дөрвөн өнцөгт нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Зууван дүрс нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Олон өнцөгт нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Одоогийн хуудсанд текстийн талбай нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Одоогийн хуудсанд зураг нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Одоогийн хуудсанд зураас нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Одоогийн хуудсанд дөрвөн өнцөгт нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Одоогийн хуудсанд зууван дүрс нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Одоогийн хуудсанд олон зураас нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Хайх / Солих</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Багажнууд</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Харуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Схем</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Нэмэх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Гүн</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Файл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Засах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Төсөл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Харуу&лах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Цо&нхнууд</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Сүүлийн файлууд</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Үндсэн цэсийг харуулах эсвэл нуух</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Дэлгэцийн цэсийг харуулах эсвэл нуух</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Схемийн цэсийг харуулах эсвэл нуух</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Элементийн самбарыг харуулах эсвэл нуух</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Буцаалт хийгдсэн жагсаалтыг харуулах эсвэл нуух</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Төслүүдийг харуулах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>%1 төсөл нь %2 лавлахад бүртгэгдсэн аайна.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Файлыг нээх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech төсөл(*.qet);;XML Файлууд (*.xml);;Бүх файлууд (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Файлыг нээх боломжгүй байна</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Таны нээхээр оролдож буй %1 файл нь устсан эсвэл байхгүй байна.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Файлыг зөвхөн харах тохиргоогоор нээж байна</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Төслийг нээх боломжгүй байна</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7873,7 +8222,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7882,106 +8231,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Дүрсийг дуусгахын тулд 2 удаа дарна уу, Сүүлийн цэгийг арилгахын тулд баруун товчийг дарна уу</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Груп</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Элементийг засварлах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Текстийн талбайг засварлах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Зургийг засварлах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Дамжуулагчийг засварлах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Сонгосон биетийг засварлах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Файлыг нээх үед алдаа гарлаа %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Төслийг идэвхжүүлэх « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Алдаа</translation> @@ -8230,17 +8574,17 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Буцаах</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation type="unfinished">Б</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished">Гүн</translation> @@ -8266,73 +8610,73 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Таталтыг хэвийн болгох</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Шулуун нэмэх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Дөрвөн өнцөгт нэмэх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Зууван нэмэх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Олон талт нэмэх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Текст нэмэх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Нум нэмэх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Холболт нэмэх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished">Дүрсийг дуусгахын тулд 2 удаа дарна уу, Сүүлийн цэгийг арилгахын тулд баруун товчийг дарна уу</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Хэсгүүд</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Анхааруулга</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> @@ -8358,31 +8702,31 @@ veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished">[Өөрчлөгдсөн]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Тохиргоогүй</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation type="unfinished"> <numerusform></numerusform> @@ -8390,35 +8734,35 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8427,12 +8771,12 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> ба</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8441,23 +8785,23 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Алдаанууд</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>%1 нэртэй файл байхгүй байна.</translation> @@ -8469,236 +8813,236 @@ veuillez patienter durant l'import...</source> <translation type="unfinished">Дэлгэцэнд харуулах</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>%1 файлыг нээх боломжгүй байна.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Алдаа</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Алдаа</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation type="unfinished">Энэ файл дээр хуулах боломжгүй</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished">Файлыг нээх боломжгүй байна</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished">Таны нээхээр оролдож буй %1 файл нь устсан эсвэл байхгүй байна.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished">Файлыг нээх</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> @@ -8846,42 +9190,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Төсөл « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Төсөл %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Нэргүй төсөл</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [зөвхөн унших]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [засагдсан]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8889,56 +9233,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Загварыг оруулах үед алдаа гарав.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Анхааруулга</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Төслийг нээж байна ...</b><br/>Creation of folios</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Төслийг нээж байна ...</b><br/>Setting up cross references</p></translation> </message> @@ -8976,127 +9320,126 @@ Que désirez vous faire ?</source> <translation>Энэ загварыг хувилахдаа хувилбарт нь нэр өгнө үү</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Шинэ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Нээх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Файлаас нээх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Хадгалах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Нэр өгч хадгалах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Файл руу хадгалах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Гарах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Арилгаж хуулах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Хуулах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Хуулж тавмх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Логонуудыг удирдах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Нэмэлт мэдээллийг засварлах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Ойртуулах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Холдуулах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Харахад тохиромжтой</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Таталтыг хэвийн болгох</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Эгнээ &нэмэх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Багана &нэмэх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Нүднүүдийг нэгтгэх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Нүднүүдийг салгах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9115,156 +9458,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Файл</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Засах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>Харуулах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Хэрэгслүүд</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Засах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Харуулах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Тохиргоогүй</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Буцаах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Нүдний тохиргоо</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Өөрчлөгдсөн]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Зөвхөн унших]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Гарчгийн блокын загварыг засварлагч</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Алдаа</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Гарчгийн блокын загварыг нээх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Файлыг нээх</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech - Гарчгийн блокын загвар (*%1);;XML files (*.xml);; All files (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Загварыг нэр өгч хадгалах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Нэр өгч хадгалах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech - Гарчгийн блокын загвар (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Нэмэлт мэдээллийг засварлах</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>You can use this field to specify the authors of this template, its license, or any other information you may find useful.</translation> </message> @@ -9395,7 +9739,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9474,17 +9818,17 @@ Que désirez vous faire ?</source> <translation>Нэмж оруулах </translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -9757,7 +10101,7 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/exportdialog.cpp" line="1081"/> <source>Folio sans titre</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Гарчиггүй хуудас</translation> </message> <message> <location filename="../sources/exportdialog.cpp" line="1083"/> @@ -9838,24 +10182,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">Тэсдэглэгээ</translation> @@ -9863,8 +10207,8 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> @@ -9976,8 +10320,8 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10128,22 +10472,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished">Гүн</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10663,7 +11007,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -10898,7 +11242,7 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -11042,6 +11386,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11086,52 +11435,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Цэг нэмэх</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Энэ цэгийг устга</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Хэмжээ</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Полигонд цэг нэмэх</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Полигоноос цэг устгах</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Засах %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>Зураас</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>Дөрвөн өнцөгт</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>Зуйван</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>Олон зураас</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>Хэлбэр</translation> </message> @@ -12043,176 +12643,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Өргөн</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Зураас</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Хэлбэр</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Зузаан</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Өнгө</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Хэвийн</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Тасархай</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Цэгтэй</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Цэг болон зураасууд</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Тасархай зураас цэг цэг</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Тасархай зураас</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Дүүргэлт</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Байхгүй</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Шулуун зураас</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Нягт 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Нягт 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Нягт 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Нягт 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Нягт 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Нягт 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Нягт 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Хөндлөн</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Босоо</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Хэрээс</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>BDiag</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>BDiag</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>CrossDiag</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Загвар</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Байрлалыг түгжих</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Хаалттай олон өнцөгт</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Формын шулууныг засварлах</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Формын дүүргэлтийг засварлах</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Олон өнцөгтийг хаах</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Энгийн формыг тохируулах</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Энгийн формын тохиргоог өөрчлөх</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_nb.ts b/lang/qet_nb.ts index ebd81e70a..e74bb3024 100644 --- a/lang/qet_nb.ts +++ b/lang/qet_nb.ts @@ -618,59 +618,59 @@ <translation>Til</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Prosjekt-status:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Regel for oppdatering</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Leder</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Begge</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Bare nye</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Bare eksisterende</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Deaktiver</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Komponent</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Side</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Eksisterende</translation> </message> @@ -848,6 +848,14 @@ Anmerkning: Disse opsjonene endrer IKKE den automatiske nummereringen, bare dens <translation>Kolonner :</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1414,13 +1422,217 @@ Anmerkning: Disse opsjonene endrer IKKE den automatiske nummereringen, bare dens <translation>Sett inn %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>ett bilde</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Velg et bilde</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Kunne ikke laste bildet</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1471,39 +1683,39 @@ Anmerkning: Disse opsjonene endrer IKKE den automatiske nummereringen, bare dens <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Koble utvalgte kontakter</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Ingen tittel</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2043,7 +2255,7 @@ Anmerkning: Disse opsjonene endrer IKKE den automatiske nummereringen, bare dens <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2653,97 +2865,102 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Felles</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Komponent</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Navn : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Side : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">Type: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Posisjon : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotasjon : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Størrelse : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Tilkoblinger : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Filbane : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Lås posisjon</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Finn i katalogen</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Endre komponent</translation> </message> @@ -4540,7 +4757,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Dette er et tegningsmal som du kan bruke i dine prosjektsider</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [ikke brukt i prosjektet]</translation> </message> @@ -4770,6 +4987,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Loddrett</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4779,23 +5019,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Bredde</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Lås posisjon</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Bildestørrelse</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Endre bildestørrelse</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Preview</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6559,117 +6897,117 @@ Disse variablene kan IKKE brukes: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Prosjektet ble endret. Vil du lagre endringene?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Lagre som</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>Uten navn</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>QElectroTech-Prosjekt (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>Ingen prosjekt å vise</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Slett siden</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Prosjektet er skrivebeskyttet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Prosjektet er skrivebeskyttet, og kan derfor ikke renses.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Fjern alle ubrukte tegningsmaler fra prosjektet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Fjern alle ubrukte komponenter fra prosjektet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Slett alle tomme kategorier</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Rense prosjektet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Tilføy en ny side</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Prosjektet inneholder ingen sider</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Åpner prosjektet....</b><br/>Lager sidefliker: </p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Prosjekt</translation> @@ -6758,173 +7096,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech instillinger</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Laster...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Laster... Systemmeldinger</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>A&vbryt</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Skjul</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>V&is</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>Skjul alle skje&maeditorer</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>Vis a&lle skjemaeditorer</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>Skj&ul alle komponenteditorer</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>Vi&s alle komponenteditorer</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>Skjul alle t&egningsmaleditorer</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>Vis alle te&gningsmaleditorer</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Ny skjemaeditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>Ny kom&ponenteditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Lukk &QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimer QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Hent opp QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Skjemaeditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Komponenteditor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Tegningsmal-editor</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Fant denne sikkerhetskopien,<br>Skal den åpnes?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Fant disse sikkerhetskopiene,<br>Skal dem åpnes?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Sikkerhetskopi</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Bruk: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation> [Opsjoner] [Fil]...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6941,34 +7279,34 @@ Tilgjengelige opsjoner: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Angir filbane til komponentsamlingen </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Angir filbane til tegningsmal-samlingen </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Angir filbane til konfigurasjonen </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Angir filbane til språkfilene @@ -6978,916 +7316,927 @@ Tilgjengelige opsjoner: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Prosjekter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Samlinger</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Ingen endring</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Klikk på aksjonen som skal reverseres</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Denne listen inneholder all gjennomførte endringer på den aktuelle siden. Et utvalg reverserer alle endringer inntil selve utvalget.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Reverser</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&ksporter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Eksporter aktuell side til et annet filformat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Utskrift</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Skriv ut en eller flere sider av prosjektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Bekreft</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Lukk QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Reverser</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Reverser siste handling</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Gjenta</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Gjenopprett siste reversering</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>K&lipp</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Ko&pier</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>L&im</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Flytter utvalgte komponenter til mellomlageret</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Kopierer utvalgte komponenter til mellomlageret</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Limer mellomlagerets innhold på siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Resett ledere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Tegner ledere på nytt uten at endringene brukes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Aktiver automatisk kobling av ledere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Koble automatisk der det er mulig</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Bakgrunnsfarge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Veksle sidenes bakgrunnsfarge mellom hvit og grått</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Vis rasteret</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Vis rasteret på sidene</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Sideegenskaper</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Endre sideegenskaper (størrelse, tegningsmal, lederegenskaper...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Prosjektegenskaper</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Sett inn ny side</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Slett siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Rense prosjektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Sett inn innholdsfortegnelse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Eksporter som CSV-fil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Starte klemmeplan-generator-plugin</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Eksporter listen av ledernavn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Eksporter den interne prosjektdatabasen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Bruk fliker</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Viser projektene som fliker</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>eller i egne vinduer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Viser åpne prosjekter i egne vinduer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Fliser</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Plasserer vinduene som fliser</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>s&tablet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Viser vinduene stablet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Utvalgsmodus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Tillater utvalg av komponenter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Visningsmodus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Tillater visning av sider uten mulighet for endring</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Neste prosjekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Aktiverer det neste prosjektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Forrige prosjekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Aktiverer det forrige prosjektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nytt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Åpne</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Lagre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Lagre som</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>L&ukk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Lager et nytt prosjekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Åpner et eksisterende prosjekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Lukker prosjektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Lagrer prosjektet med alle prosjektsidene</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Lagrer prosjketet med et nytt filnavn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Sett inn rad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Sletter en kolonne</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Setter inn råd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Sletter rad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Tilføyer en kolonne på siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Sletter en kolonne på siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Øker sidenes høyde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Krymper til sidehøyden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Sletter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Roterer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Roterer tekstene</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Søk i skjemaet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Endre utvalgt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Grupperer de utvalgte tekstene</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Legg til en register</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Sletter de utvalgte komponentene fra siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Roterer utvalgte komponenter og tekster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Roterer de utvalgte tekstene i eksakt vinkel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Finner de utvalgte komponeter i skjemaet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Velg alle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Forkast hele utvalget</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Inverter utvalget</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Velg alle komponeter på siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Forkast utvalg av komponenter på siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Velger alt som ikke var valgt hittil, og forkaster alt som hittil har vært valgt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Forstørr</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Forminsk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Vis alt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Tilpass</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Ingen zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Øker sidestørrelsen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Forminsker sidestørrelsen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Tilpasser størrelse slik at hele sideinnhold vises, uavhengig av tegningsmalen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Tilpasser størrelsen til tegningsmalen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Tilbakestiller til standardstørrelsen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Sett inn tekstfelt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Sett inn et bilde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Sett inn en linje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Sett inn en rektangel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Sett inn en ellipse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Sett in et polygon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Setter inn et tekstfelt på den aktuelle siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Setter in et bilde/grafikk på den aktuelle siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Setter inn en linje på den aktuelle siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Setter inn en rektangel på den aktuelle siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Setter inn en ellipse på den aktuelle siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Setter inn et polygon på den aktuelle siden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Søk/erstatt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Verktøy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Display</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Skjema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Sett inn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Dybde/nivå</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Fil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Endre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>Prosjekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Statusl&inje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Vind&uer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>Tidligere åpnet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Viser/skjuler verktøylinjen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Viser/skjuler statuslinjen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Viser/skjuler skjema-verktøylinjen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Viser/skjuler komponentpanelet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Viser/skjuler endringslisten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Vis prosjektene</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Prosjekt %1 lagret i filbane %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Åpne en fil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech-prosjekter (*.qet);; XML-filer (*.xml);;Alle filer (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Får ikke åpnet filen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Det ser ut som om filen %1 du vil åpne ikke finnes</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Du har ikke tilstekkelig myndighet/tillatelse for å få adgang til filen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Åpner prosjekt i lesemodus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Du har ikke tillatelse for å skrive prosjeket, den åpnes skrivebeskyttet isteden.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Får ikke åpnet prosjektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Det ser ut som om filen %1 ikke er noe QElectroTech-prosjektfil. Den kan ikke åpnes.</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7896,7 +8245,7 @@ Tilgjengelige opsjoner: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7905,106 +8254,101 @@ Tilgjengelige opsjoner: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Dobbeltklikk for å avslutte formen, høyreklikk for å slette det siste punktet</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Gruppe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Endre komponent</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Endre tekstboks</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Endre bilde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Endre leder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Endre utvalg</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Huffda, får ikke åpnet filen %1</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Aktiverer prosjekt "%1"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fy faen, en feil</translation> @@ -8253,17 +8597,17 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Endre komponentegenskaper</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Avbryt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Gjenta</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Dybde</translation> @@ -8289,73 +8633,73 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Ingen forstørrelse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Sett inn linje</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Sett inn rektangel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Sett inn ellipse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Sett inn polygon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Sett inn tekst</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Sett inn en bue</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Sett inn klemme</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Sett inn dynamisk tekstboks</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Dobbeltklikk for å avslutte formen, høyreklikk for å slette siste punktet</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Sett inn fast tekst i tegningen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Sett inn tekst som kan endres i tegningen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Dele</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Advarsel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> @@ -8381,31 +8725,31 @@ veuillez patienter durant l'import...</source> <translation>Lim inn fra...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[endret]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation>[skrivebeskyttet]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Ikke endret</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Komponenteditor</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n utvalgt del</numerusform> @@ -8413,35 +8757,35 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Ingen tilkoblingspunkt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Uten tilkoblingspunkter kan komponentet ikke kobles til andre komponenter gjennom ledere.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Ingen tilkoblingspunkter</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Feil</b> :<br>Kryssreferanser til sider kan bare ha en (1) tilkoblingspunkt<br><b>Løsninglt;/b> :<br>Sjekk om komponentet bare har et eneste tilkoblingspunkt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Sjekk av komponenten viser</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8450,12 +8794,12 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> og</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8464,23 +8808,23 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Feil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Advarsler</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Filen %1 finnes ikke</translation> @@ -8492,236 +8836,236 @@ veuillez patienter durant l'import...</source> <translation type="unfinished">Verktøylinjer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Får ikke åpnet fil %q</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Denne filen er ikke en gyldig XML-fil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Feil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Bare skrivebeskyttet</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Du har ikke myndighet for å endre komponentet. Den er åpnet i skrivebeskyttet modus.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Feil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Kan ikke skrive på filen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Kan ikke lagre komponentet</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Får ikke åpnet filen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Det ser ut som om filen %1 du vil åpne ikke finnes (lenger)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Laster komponentet</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Komponenten ble endret. Om du laster på nytt, mister du endringene. Vil du virkelig laste komponenten på nytt?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">QElectroTech-komponent (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Kunne ikke lagre</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Kunne ikke lagre. De nødvendige forutsetningene er ikke tilstede</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Lagre som</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech-komponent (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Lagre aktuell komponent?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Vil du lagre komponent %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Åpne en fil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech-komponeter (*.elmt);;XML-filer (*.xml);;Alle filer (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Komponenten finnes ikke</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Den symboliske stien peker ikke til en komponent</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Komponenten finnes ikke</translation> @@ -8869,42 +9213,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Prosjekt "%1: %2"</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Prosjekt %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Prosjekt uten tittel</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [skrivebeskyttet]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [endret]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8912,56 +9256,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Det oppstod en feil ved bruk av sidemalen</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Advarsel</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Åpner prosjektet...</b><br/>Sidene lages</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Åpner prosjektet...</b><br/>Laster inn kryssreferansene</p></translation> </message> @@ -8999,127 +9343,126 @@ Que désirez vous faire ?</source> <translation>For å kopiere tegningsmalen sett inn et nytt navn til kopien</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Ny</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>Å&pne</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Åpne fra fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Lagre</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Lagre s&om</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Lagre som fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>A&vslutt</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>K&lipp</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Kopier</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>Lim i&nn</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Forvaltning av logoer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Endre utvidet informasjon</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Forstørr</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Forminsk</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Tilpass</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Opprinnelig størrelse</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Sett inn &rad</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Sett inn k&olonne</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>Slå s&ammen feltene</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>Sk&ill sammenslåtte feltene</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9138,156 +9481,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Endre</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>V&is</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Verktøy</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Endre</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Vis</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Ingen endring</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Tilbakeføringer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Feltegenskaper</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Endret]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Skrivebeskyttet]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Tegningsmal-editor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Åpne en mal</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Åpne en fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech-tegningsmaler (*%1);;XML-filer (*.xml);;Alle filer (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Lagre tegningsmal som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Lagre som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech-tegningsmaler (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Endre tilleggsinformasjon</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Dette tekstfeltet kan brukes for å nevne tegninsmalenes autor, lisens eller andre tilleggsinformasjoner</translation> </message> @@ -9418,7 +9762,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9499,17 +9843,17 @@ Que désirez vous faire ?</source> <translation>Sett inn</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Velg et bilde</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Bildefiler (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Kunne ikke laste bildet</translation> </message> @@ -9971,22 +10315,22 @@ Vil du erstatte den?</translation> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Installasjon av plugin qet_tb_generator<br>Se:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Benötigt python 3.5 oder höher.<br><B><U> Erste Installation unter Windows</B></U><br>1. Python 3.5 oder höher installieren<br> Siehe:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Update under Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>Plug-in (Skript) flyttes i denne permen og kjøres så derifra:<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished">Feil ved start av qet_tb_generator-plugin</translation> </message> @@ -10090,24 +10434,24 @@ Vil du erstatte den?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Type</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">Kommentar</translation> @@ -10115,16 +10459,16 @@ Vil du erstatte den?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10694,7 +11038,7 @@ Vil du erstatte den?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -10924,7 +11268,7 @@ Vil du erstatte den?</translation> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -11068,6 +11412,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11112,52 +11461,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Sett inn et punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Slett punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Størrelse</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Sett inn et knekkpunkt i polygonet</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Slett et knekkpunkt fra polygonet</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Endre %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>en linje</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>et rektangel</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>en ellipse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>et polygon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>en figur</translation> </message> @@ -12072,176 +12672,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Bredde</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Linje</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Type</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Tykkelse</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Farge</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Strek</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Punktelinje</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Strekpunkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Strek-punkt-punkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Brukerdefinert mønster</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Fylling</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Ingen</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Helt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Tetthet 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Tetthet 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Tetthet 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Tetthet 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Tetthet 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Tetthet 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Tetthet 8</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Vannrett</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Loddrett</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Kryssed</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Skrå ned</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Skrå opp</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Skrå kryssed</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Stil</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Lås posisjon</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Lukket polygon</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Endre figurens linje</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Endre figurens fylling</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Lukk polygonet</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Endre en basisfigur</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Endre basisfigurens egenskaper</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_nl_BE.ts b/lang/qet_nl_BE.ts index ff25c89a1..cecde66e8 100644 --- a/lang/qet_nl_BE.ts +++ b/lang/qet_nl_BE.ts @@ -586,7 +586,7 @@ <translation>Formulier</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Status project:</translation> </message> @@ -621,54 +621,54 @@ <translation>Naar</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Aanpassings regels</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Geleider</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Enkel nieuwe</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Beiden</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Uitgeschakeld</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Element</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Enkel bestaande</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Bladzijde</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Bestaande</translation> </message> @@ -848,6 +848,14 @@ Let op: Deze opties blokkeren NIET de Automatisch nummering, maar passen alleen <translation>Afmetingen schema</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1414,13 +1422,217 @@ Let op: Deze opties blokkeren NIET de Automatisch nummering, maar passen alleen <translation>Toevoegen %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>een afbeelding</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Selecteer een afbeelding...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Fout</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Onmogelijk om de afbeelding op te halen.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1472,40 +1684,40 @@ Let op: Deze opties blokkeren NIET de Automatisch nummering, maar passen alleen <translation>Een sjabloon maken</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Verbind de geselecteerde aansluitklemmen</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Naamloos</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation>Model geregistreerd</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation>Het model is succesvol geregistreerd onder: %1</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation>Fout</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation>Het bestand kon niet worden geschreven.</translation> </message> @@ -2045,7 +2257,7 @@ Let op: Deze opties blokkeren NIET de Automatisch nummering, maar passen alleen <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation>Een element automatisch nummeren</translation> @@ -2656,100 +2868,105 @@ De weergavenaam van het element kan afzonderlijk worden gewijzigd in de eigensch <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Algemeen</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Element </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Naam : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Bladzijde : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Type: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Subtype : %1</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Positie : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Draaiing %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Afmetingen : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Klemmen : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation>Maximum aantal gedefinieerde slave-contacten: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation>Aantal gebruikte slave-contacten: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Positie : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Vind terug in verzameliing</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Bewerken element</translation> </message> @@ -4573,7 +4790,7 @@ Alle andere waarden dan 'Geen afronding' kunnen projectweergavefouten <translation>Dit is een titelhoek welke u kan toepassen op een schema bladzijde.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [niet gebruikt in dit project]</translation> </message> @@ -4804,6 +5021,29 @@ Alle andere waarden dan 'Geen afronding' kunnen projectweergavefouten <translation>Vertikaal</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished">Reset</translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4813,24 +5053,122 @@ Alle andere waarden dan 'Geen afronding' kunnen projectweergavefouten </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Hoogte</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation> Positie vergrendelen</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Afmetingen afbeelding</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Wijzig de afmetingen van een afbeelding</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6603,118 +6941,118 @@ De volgende items zijn niet compatibel : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Verwijder ongebruikte elementen uit project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Verwijder lege categorieen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Project is gewijzigd. Wilt u wijzigingen bewaren?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>zonder naam</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Project QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Verijderen van schema bladzijde ?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation>Weet je zeker dat je dit pagina uit het project wilt verwijderen?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Alleen lezen project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Dit project is alleen lezen. en kan dus niet geschoond worden.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Verwijder ongebruikte sjablonen uit project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Schoon project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Een schema bladzijde toevoegen</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Ga terug naar het begin van het project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Ga naar het einde van het project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation>ga een pagina naar links</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation>ga een pagina naar rechts</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Dit project bevat geen enkele schem bladzijde</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Bewaren als</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>Geen actief project</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Project open in uitvoering...</b><br/>Creatie van de schema bladzijden :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translatorcomment>venstertitel voor een projectloze projectweergave</translatorcomment> @@ -6756,115 +7094,115 @@ Wilt u wijzigingen bewaren?</translation> <translation>Gebruiker titel blok sjabloon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Afsluiten</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Verbergen</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Herstellen</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Verberg alle bewerkingen van het schema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Herstellen alle bewerkingen van het schema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Verberg alle bewerkingen van dit element</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Herstel alle bewerkingen van dit element</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Verberg alle bewerkingen van dit titel blok sjabloon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Herstel alle bewerkingen van dit titel blok sjabloon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Nieuwe uitgever van het schema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Nieuwe uitgever van het element</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Sluit QElectroTech programma</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Verklein QElectroTech naar systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Vergroot QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Bewerk de schema's</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Bewerk het element</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Bewerk het titel blok sjabloon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b> Het volgende herstelbestand is gevonden, <br> Wilt u het openen? </ b> <br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b> De volgende herstelbestanden zijn gevonden, <br> Wilt u ze openen? </ b> <br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Herstelde schema's</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation>Rapporteer de fouten</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation>QElectroTech is tijdens de laatste uitvoering niet correct afgesloten. @@ -6872,22 +7210,22 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les Hieronder vindt u de laatste berichten die zijn vastgelegd vóór de afsluiting. U kunt deze opslaan om ze in een bugrapport op te nemen.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation>Diagnostisch rapport</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation>Dit bevat de meest recente logberichten voor deze sessie. Controleer de inhoud voordat u deze toevoegt aan een openbaar bugrapport.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Gebruik: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6904,7 +7242,7 @@ Beschikbare opties: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6913,34 +7251,34 @@ Beschikbare opties: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --gemeenschappelijke-map voor elementen-=MAP definieer de elementen collectie map </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --gemeenschappelijke-tbt-map=MAP Definieer de titel blok sjablonen collectie map </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-map=MAP Definieer configuratie map </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation>--data-dir=DIR Stel de gegevensmap in</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --ltaal map=MAP Definieer de taalbestanden map @@ -6995,32 +7333,32 @@ Beschikbare opties: <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech instellen</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translatorcomment>splash screen onderschrift</translatorcomment> <translation>Laden ...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Laden... Systray icon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -7029,892 +7367,903 @@ Beschikbare opties: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Weer&gave</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Weergeven of verbergen het elementen paneel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Kolom toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Trapsgewijs</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Plakken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Kop&ieren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Kn&ippen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Selecteer niets</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Bewerken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Kolom verwijderen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>B&ewaren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Bewaren als</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&xporteer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Ve&nsters</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Sluiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Bestand</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Afdrukken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Selectie omkeren</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Selectie modus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Dit paneel bevat de verschillende acties welke toegpast zij op de huidige schema bladzijde. Klikken op één van deze acties brengt het schema terug naar de inhoud juist na het toepassen van deze actie.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Achtergrond kleur wit of grijs</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Geef de achtergrond kleur van het schema weer in wit of grijs</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Geef rooster weer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Verbergen of weergeven raster op de bladzijden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Schema eigenschappen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Schema bladzijde toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Schema baldzijde verwijderen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Verplaatsen modus</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mozaïek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation>Diagram editor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Exporteer in pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Exporteer een of meer folio's van het huidige project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation>Geef de hulp lijnen weer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation>Weergeven of verbergen van de hulp lijnen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Exporteren in CSV-indeling</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Klemmen beheerder (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Start de creatie van klemmen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Exporteer de lijst met bestuurdersnamen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation>Exporteer het bedradingsschema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation>Automatische klem nummering</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Exporteer de interne projectdatabase</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nieuw</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Nieuw project aanmaken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Bestaand project openen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Het huidige project sluiten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Bewaar het huidige project en al zijn schema bladzijden</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Bewaar het huidige project met een andere naam</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Een rij toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Verwijderen van een rij</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Voeg een kolom toe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Verwijder een kolom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Vergroot het schema in de hoogte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Verklein het schema in de hoogte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Verwijder de geselecteerde elementen van het schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Selecteer alle elementen op deze schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Selecteer niets op deze schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Vergroot deze schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Verklein deze schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Uitzomen toegestaan buiten het schema kader</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Pas de zoom waarde aan aan de exacte afmetingen van het schema kader</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Teken een lijn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Rechthoek toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Voeg ellipse toe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Polylijn toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Exporteer de huidige schemabladzijde naar een ander formaat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Afdrukken van één of meerdere schema bladzijden van het huidige project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Diepte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Groep</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Plaat elementen op het klembord</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Bewerk de bladzijde eigenschappen (afmetingen, informatie op de etiket, eigenschappen van de geleiders...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>U kan deze bladzijde alleen lezen en niet wijzigen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Gereedschappen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Open</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Bestand openen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Zoom 1:1</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Draaien</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Verlaten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Verwijderen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Selecteer alles</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Passend maken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Zoom Uit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Zoom In</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Annuleer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Herdoen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Reset geleiders</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Weergeven of verbergen van de hoofdwerkbalk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Tonen of verbergen van de weergave werkbalk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Tonen of verbergen van de schema werkbalk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Weergave</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Toevoegen een tekstveld</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Geen wijzigingen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Tonen of verbergen van de lijst met wijzigingen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Bewerk het geselecteerde item</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Groep van geslecteerde teksten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Draai de geselecteerde elementen en teksten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Draai de geselecteerde teksten met specifieke hoek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Zoeken/vervangen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Onlangs geopende projecten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Project %1 bewaard in map %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Het lijkt erop dat het bestand dat u probeert te openen niet leesbaar is. Het is dus onmogelijk om het te openen. Controleer de bestandsrechten.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Het lijkt erop dat het project dat u probeert te openen niet leesbaar is. Het zal geopend worden als alleen-lezen.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Gebruik tabs</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Gebruik vensters</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Weergeven projecten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Project eigenschappen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation> Reinig het project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Project openen mislukt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Het lijkt erop dat het bestand %1 geen QElectroTech project is. Het kan niet worden geopend.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Annuleringen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Klik op een actie om terug te gaan in de bewerkingen van uw schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Kies tekst orientatie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Zoeken in paneel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Afbeelding toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Samenvatting toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Zoom op de inhoud</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Afsluiten QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Annuleer de vorige actie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Herstel de geannuleerde actie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Verplaats de geselecteerde elementen naar het klembord</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Kopieert de geselecteerde elementen naar het klembord</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation> Deselecteert alle geselecteerde elementen en selecteert de niet-geselecteerde elementen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Vind het geselecteerde element in het paneel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Herberekent de paden van geleiders, ongeacht de veranderingen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Automatisch creatie van geleiders</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projecten</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Collectie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Maak gebruik van automatische creatie van geleider(s) indien mogelijk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Herstel naar de standaard zoom instelling</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Toont de verschillende geopende projecten in vensters</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation>Autoamtisch snijden van een geleider</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation>Automatisch de bestaande geleiders snijden bij het plaatsen van een element.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Nomenclatuur toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Toont de verschillende geopende projecten in tabs</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation> Selecteert elementen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation>Draai de groep</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation>Draai de selectie als groep rondom het middelpunt, in plaats van elk element afzonderlijk</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation>Voeg een PDF toe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Voeg een klemmen plan toe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Voeg een tekstveld bij op de huidige schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Voeg een afbeelding bij op de huidige schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation>Voeg een PDF-pagina toe aan het huidige folio.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Voeg een lijn toe aan de huidige schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Voeg een recthoek toe aan de huidige schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Voeg een elpis toe aan de huidige schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Voeg een polygoon toe aan de huidige schema bladzijde</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Voeg een klemmen plan toe op de huidige pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation>Een element bereiken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation>Zoek en selecteer snel een item in de pagina</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>toevoegen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Project QElectroTech (*.qet);;Bestand XML (*.xml);;Alle bestanden (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation> Kan het bestand niet openen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation> Het lijkt erop dat het bestand %1 dat u probeert te openen niet bestaat.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Open het bestand als alleen lezen</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation> @@ -7923,7 +8272,7 @@ Het lijkt erop dat het bestand %1 dat u probeert te openen niet bestaat.</transl </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation> @@ -7932,23 +8281,18 @@ Het lijkt erop dat het bestand %1 dat u probeert te openen niet bestaat.</transl </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation>Project eigenschappen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Dubbelklik om het formulier te voltooien, klik met de rechtermuisknop om het laatste punt ongedaan te maken</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation>Klem kan niet worden verwijderd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation>De verwijdering kan niet worden uitgevoerd omdat de selectie een of meer gekoppelde terminals en/of terminals bevat die tot een terminal met meerdere niveaus behoren. @@ -7956,113 +8300,113 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunnen verwijderen.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Element bewerken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Tekst veld bewerken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Afbeelding bewerken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Bewerk geleiders</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Het geselecteerde object bewerken</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Een fout heeft zich voorgedaan bij het open vanbestand %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Activeer project " %1 "</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation>Weet je zeker dat je deze pagina wilt verwijderen?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation>Verwijder de paginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation>Weet u zeker dat u de geselecteerde %1 paginas wilt verwijderen?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation>Verwijder %1 paginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation>Verplaats de paginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fout</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Zet vensters in tegelpatroon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Zet vensters achter elkaar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Volgende project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Vorige project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Activeert volgende project</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Activeert vorige project</translation> @@ -8266,53 +8610,53 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne <translation>importeer een element om de grootte te wijzigen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Voeg lijn toe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Voeg ellipse toe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Voeg polygoon toe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Voeg tekst toe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Voeg boog toe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Voeg een klem toe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Anuleer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Herstel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Bij de afwezigheid van contact klem, is het niet mogelijk het element te verbinden met andere element door middel van geleiders.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Geen wijzigingen</translation> </message> @@ -8357,13 +8701,13 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne <translation>Bewerk auteur informatie</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Delen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Diepte</translation> @@ -8379,12 +8723,12 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne <translation>Bewerk de eigenschappen van het element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Voeg dynamisch tekstveld toe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Dubbelklik om het formulier te voltooien, klik met de rechtermuisknop om het laatste punt ongedaan te maken</translation> </message> @@ -8409,26 +8753,26 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne <translation>Plakken van...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Gewijzigd]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Alleen lezen]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Element bewerker</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n geselecteerd onderdeel.</numerusform> @@ -8436,24 +8780,24 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Geen verbindings punt aanwezig</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Fout</b>:<br>de schema bladzijde moet minstens 1 verbindingscontact bevatten.<br><b>Oplossing</b>:<br>Zie het element na of het minstens 1 verbindingscontact bevat</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>De controle van dit element is gebeurd</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translatorcomment>foutmelding</translatorcomment> @@ -8463,32 +8807,32 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> en</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Fouten</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Terminal object ontbreekt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Voeg een niet-bewerkbare tekst element toe in de schema bladzijden</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Voeg tekstveld toe die in schema's kan worden bewerkt</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translatorcomment>waarschuwingen</translatorcomment> @@ -8498,13 +8842,13 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Bestand %1 bestaat niet.</translation> @@ -8516,253 +8860,253 @@ Ontkoppel en/of verwijder de niveaus van de betreffende terminals om ze te kunne <translation>Weergeven</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Onmogelijk om bestand %1 te openen.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Dit bestand is geen geldig XML document</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Fout</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Alleen lezen versie</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>U beschikt niet over de nodige rechten om dit element te wijzigen. Het zal geopend worden als alleen-lezen.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fout</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Onmogelijk om naar het bestand te schrijven</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Onmogelijk om element te bewaren</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Te veel primitieven, lijst niet gegenereerd: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation>Onjuist aantal klemmen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation><br><b>Fout</b>:<br>Geleiderdefinities kunnen slechts één aansluiting hebben.<br><b>Oplossing</b>:<br>Controleer of het element slechts één aansluiting heeft</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation>Element editor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation>Exporteren naar SVG</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation>SVG-afbeelding (*.svg)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation>Export mislukt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation>Kan niet naar bestand "%1" schrijven.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Aankondiging</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Het importeren van een groot dxf-bestand kan tijd kosten Even geduld terwijl het importeren bezig is...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Importeer een item om het formaat te wijzigen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>QElectroTech elementen (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Onmogelijk om bestand te openen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Het lijkt erop dat het bestand %1 dat u probeert te openen niet bestaat.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Bewaren mislukt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Bewaren mislukt, de benodigde voorwaarden zijn niet voldaan</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Open een bestand</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech elementen (*.elmt);;XML files (*.xml);;All files (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Herlaad elementen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Waarschuwingen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Je hebt veranderingen op dit element gemaakt. Als u herlaadt, zullen deze wijzigingen verloren. Wil je echt herladen van het item?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Bewaren als</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech elementen (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Bewaren actief element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Wilt u het element %1 bewaren ?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Element bestaat niet.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Het element bestaat niet.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Het gekozen virtuele pad correspondeert niet met een element.</translation> @@ -8783,7 +9127,7 @@ les conditions requises ne sont pas valides</source> <translation>P&lakken</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Rechthoek toevoegen</translation> </message> @@ -8930,48 +9274,48 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Aankondiging</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Project « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projectbestandsnaam %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Naamloos project</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [alleen lezen]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [gewijzigd]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation>Gewijzigd contactsysteem</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8983,13 +9327,13 @@ Bestaande ondergeschikte elementen worden niet automatisch toegewezen. U moet de Wilt u doorgaan?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Fout bij invoegen van het sjabloon.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8998,7 +9342,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> U gebruikt momenteel QElectroTech versie %2</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -9007,31 +9351,31 @@ Que désirez vous faire ?</source> Wat wil je doen?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Waarschuwing</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>Het project dat u probeert te openen is gedeeltelijk compatibel met uw versie %1 van QElectroTech.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>Om het volledig compatibel te maken, opent u hetzelfde project met versie 0.8 of 0.80 van QElectroTech, slaat u het project op en opent u het opnieuw met deze versie. Wat wil je doen?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align = "center"> <b> Open het huidige project ... </ b> <br/> Aanmaken van schema bladzijden </ p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align = "center"> <b> Het lopende project openen ... </ b> <br/> Kruisverwijzingen instellen </ p></translation> </message> @@ -9069,139 +9413,138 @@ Wat wil je doen?</translation> <translation>Om dit sjabloon te kopieren, geef een naam voor de kopie</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Nieuw</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Openen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Open van een bestand</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>B&ewaren</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Bewaren als</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Opslaan naar een bestand</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Afsluiten</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Beheer logos</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Zoom In</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Zoom uit</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Past in scherm</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Reset zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Bewaaren als</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech titel blok sjablonen (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>Cellen samenvoegen &f</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Kn&ippen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>Kop&ieren</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>P&lakken</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Bewerk de extra informatie</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Rij toevoegen &l</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>&Kolom toevoegen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>Cellen &splitsen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9220,144 +9563,145 @@ Wat wil je doen?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation>Etiket editor</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Bestand</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>Wijzig &en</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>Weer&geven</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Gereedschappen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Versie</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Weergave</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Geen wijzigingen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Afbreken</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Cel eigenschappen</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Gewijzigd]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Alleen lezen]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Titel blok sjabloon bewerker</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fout</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation>Het lukt niet om de sjabloon "%1" op te slaan.</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Open een titel blok sjabloon</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Open een bestand</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech titel blok sjablonen (*%1);;XML files (*.xml);; Alle bestanden (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Bewaar sjabloon als</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation>De naam "%1" is niet geldig: deze mag de volgende tekens niet bevatten: \ / : * ? " < > |</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Bewerk de extra informatie</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>U kan dit leeg veld gebruiken voor informatie betreffende auteurs, licentie en andere info.</translation> </message> @@ -9936,18 +10280,18 @@ Wat wil je doen?</translation> <translation>Project eigenschappen</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Selecteer een afbeelding...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Afbeeldings bestanden (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9956,7 +10300,7 @@ Wat wil je doen?</translation> <translation>Fout</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Onmogelijk om de afbeelding op te halen.</translation> </message> @@ -10391,24 +10735,24 @@ Wilt u deze vervangen?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation>Type</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation>Adres</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Commentaar</translation> @@ -10416,16 +10760,16 @@ Wilt u deze vervangen?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation>Kruis verwijzing</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10722,22 +11066,22 @@ Wilt u deze vervangen?</translation> <translation>Creatie van geleiders</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>De plug-in qet_tb_generator installeren <br> Bezoek: <a href='https://pypi.python.org/pypi/qet-tb-generator'> qet-tb-generator </a> - vereist python 3.5 of hoger. <br> <B> <U> Eerste installatie op Windows </ U> <br> 1. Installeer, indien nodig, python 3.5 of hoger <br> Bezoek: <a href='https://www.python.org/downloads/'> python.org </a> <br> 2. pip install qet_tb_generator <br> <B> <U> Update voor Windows </ U> <br> python -m pip install - upgrade qet_tb_generator <br> directory <br> C: \ gebruikers \ XXXX \ AppData \ Local \ Programs \ Python \ Python36-32 \ Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>Om de plugin qet_tb_generator te installeren<br>Ga naar:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>< B><U>Eerste installatie op macOSX</B></U><br>1. Installeer, indien nodig, alleen de python 3.11-bundel, <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 Voer het script Profile.command uit<br>omdat het programma een hardgecodeerd PATH gebruikt om de qet-tb-generator-plug-in te lokaliseren <br> Bezoek:<br><a href='https://qelectrotech .org/forum/viewtopic.php?pid=5674#p5674'>hoe</a><br>2. pip3 installeer qet_tb_generator<br><B><U> Update op macOSX</B></U><br> pip3 installeer --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Om de plug-in qet_tb_generator te installeren <br> Bezoek: <br> <a href='https://pypi.python.org/pypi/qet-tb-generator'> qet-tb-generator </a> <br> < br> Python 3.5 of hoger vereist. <br> <br> <B> <U> Eerste installatie op Linux </B> </U> <br> 1. controleer of u pip3 hebt geïnstalleerd: pip3 --version <br> Indien niet installeren met: sudo apt-get install python3-pip <br> 2. Installeer het programma: sudo pip3 install qet_tb_generator <br> 3. Start het programma: qet_tb_generator <br> <br> <B> <U> Update op Linux </B> </U> <br> sudo pip3 install --upgrade qet_tb_generator <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Fout bij opstarten qet_tb_generator toepassing</translation> </message> @@ -10765,7 +11109,7 @@ Wilt u deze vervangen?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>dit is een fout in de code</translation> @@ -10950,7 +11294,7 @@ Wilt u deze vervangen?</translation> <translation>Universele uitgang</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Importeer een dxf file</translation> </message> @@ -11144,6 +11488,11 @@ Download deze door de onderstaande link te volgen en pak het uit in de installat <source>Impossible de rendre la page PDF.</source> <translation>Het lukt niet om de PDF-pagina weer te geven.</translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11190,55 +11539,306 @@ Voeg een nieuwe tafel toe of pas de bestaande tabel aan om alle informatie weer <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>een vorm</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>een lijn</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Voeg een punt toe</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Verwijder een punt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Dikte</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Voeg een punt op het polygoon toe</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Verwijder een punt op het polygoon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Wijzigen %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>een rechthoek</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>een elipse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>een polugoon</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12167,150 +12767,177 @@ De overige velden worden niet gebruikt.</translation> <translation>Formulier</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Eigenschappen</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Dikte</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normaal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Streep streep</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Punt punt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Streep punt streep punt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Streep punt punt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Aangepast lijn</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Type</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Kleur</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Vulling</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Stijle</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Geen</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Hoogte</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Vol</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Densiteit 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Densiteit 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Densiteit 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Densiteit 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Densiteit 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Densiteit 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Densiteit 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Horizontaal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Vertikaal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Kruis</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Schuin achter</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Schuin voor</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Schuin en kruis</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Positie vergrendelen</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Gesloten polygoon</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12319,30 +12946,60 @@ De overige velden worden niet gebruikt.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Wijzig de eigenschappen van een vorm</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Wijzig en vervang de eigenschappen van een vorm</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Polygoon sluiten</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Wijzig een simple vorm</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Wijzig de eigenschappen van een simple vorm</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_nl_NL.ts b/lang/qet_nl_NL.ts index c48fec14d..6f53f2597 100644 --- a/lang/qet_nl_NL.ts +++ b/lang/qet_nl_NL.ts @@ -616,59 +616,59 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -840,6 +840,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1406,13 +1414,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1474,39 +1686,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2035,7 +2247,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2645,89 +2857,94 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished"></translation> </message> @@ -4505,7 +4722,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation type="unfinished"></translation> </message> @@ -4735,6 +4952,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4744,22 +4984,120 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> - <source>Verrouiller la position</source> + <source>Largeur</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6520,117 +6858,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation type="unfinished"></translation> @@ -6719,173 +7057,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6896,31 +7234,31 @@ Options disponibles : <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation type="unfinished"></translation> @@ -6929,916 +7267,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7847,7 +8196,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7856,106 +8205,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> @@ -8250,120 +8594,120 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation type="unfinished"> <numerusform></numerusform> @@ -8371,45 +8715,45 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8418,12 +8762,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8432,248 +8776,248 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished"></translation> </message> @@ -8820,42 +9164,42 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8863,56 +9207,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -8950,127 +9294,126 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9089,156 +9432,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation type="unfinished"></translation> </message> @@ -9273,7 +9617,7 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -9507,7 +9851,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9566,17 +9910,17 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -9783,7 +10127,7 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -10204,22 +10548,22 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10368,24 +10712,24 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished"></translation> @@ -10393,16 +10737,16 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11012,6 +11356,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11056,52 +11405,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation type="unfinished"></translation> </message> @@ -11980,176 +12580,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> - <source>Trait</source> + <source>Géométrie</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> + <source>Trait</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_pl.ts b/lang/qet_pl.ts index 089bc8e8a..63559990a 100644 --- a/lang/qet_pl.ts +++ b/lang/qet_pl.ts @@ -588,7 +588,7 @@ <translation>Forma</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Status projektu:</translation> </message> @@ -623,54 +623,54 @@ <translation>Do</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Aktualizacja zasad</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Przewód</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Tylko wstawiane</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Oba</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Wyłączone</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Element</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Tylko istniejące</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Arkusz</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Istniejące</translation> </message> @@ -850,6 +850,14 @@ Uwaga: te opcje nie pozwalają na zablokowanie automatycznej numeracji tylko ust <translation>Rozmiar arkusza</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1416,13 +1424,217 @@ Uwaga: te opcje nie pozwalają na zablokowanie automatycznej numeracji tylko ust <translation>Wstawianie %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>obraz</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Wybierz obraz...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Błąd</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Nie można załadować obrazu.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1474,39 +1686,39 @@ Uwaga: te opcje nie pozwalają na zablokowanie automatycznej numeracji tylko ust <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Połącz wybrane zaciski</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Bez tytułu</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Błąd</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2047,7 +2259,7 @@ Uwaga: te opcje nie pozwalają na zablokowanie automatycznej numeracji tylko ust <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2659,99 +2871,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Ogólne</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Element </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Nazwa: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Arkusz: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Typ: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Podtyp: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Pozycja: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Obrót: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Wymiary: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Zacisk: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Położenie: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Zablokuj położenie</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Znajdź w panelu</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Edytuj element</translation> </message> @@ -4568,7 +4785,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Szablony tabliczek rysunkowych, które mogą być zastosowane w schemacie.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [nieużywany w projekcie]</translation> </message> @@ -4800,6 +5017,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4809,23 +5049,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Szerokość</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Wysokość</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Zablokuj położenie</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Rozmiar obrazu</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Zmiana rozmiaru obrazu</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Podgląd</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6600,118 +6938,118 @@ Poniższe zmienne są zgodne: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Usuń nieużywane elementy projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Usuń puste kategorie</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Projekt został zmieniony. Czy chcesz zapisać zmiany?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>Bez nazwy</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Projekt QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Usunąć arkusz?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Projekt w trybie tylko do odczytu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Ten projekt jest w trybie tylko do odczytu. Usunięcie jest niemożliwe.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Usuń nieużywane szablony projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Wyczyść projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Wstaw arkusz</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Wróć do początku projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Przejdź do końca projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Ten projekt nie zawiera arkuszy</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Zapisz jako</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>brak zapisanego projektu</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Otwieranie projektu trwa...</b><br/>Utwórz zaokrąglenia dla arkuszy:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projekt</translation> @@ -6753,136 +7091,136 @@ Czy chcesz zapisać zmiany?</translation> <translation>Tabliczki rysunkowe użytkownika</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Zakończ</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Ukryj</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Pokaż</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Ukryj wszystkie edytory schematów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Pokaż wszystkie edytory schematów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Ukryj wszystkie edytory elementów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Pokaż wszystkie edytory elementów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Ukryj wszystkie edytory tabliczek rysunkowych</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Pokaż wszystkie edytory tabliczek rysunkowych</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Nowy edytor schematów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Nowy edytor elementów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Zamknij QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Zminimalizuj QElectroTech do systemowego zasobnika</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Pokaż QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Edytory schematów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Edytory elementów</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Edytory tabliczek rysunkowych</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Znaleziono następujący plik przywracania,<br>Czy chcesz go otworzyć?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Znaleziono następujące pliki przywracania,<br>Czy chcesz je otworzyć?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Przywróć plik</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Użyć: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6899,7 +7237,7 @@ Dostępne opcje: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6908,34 +7246,34 @@ Dostępne opcje: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Określ katalog elementów </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> -common-tbt-dir=DIR Określ katalog kolekcji szablonów tabliczek rysunkowych </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Określ konfigurację katalogu </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR Zdefiniuj folder data</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Określ katalog zawierający pliki językowe @@ -6990,31 +7328,31 @@ Dostępne opcje: <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Konfiguracja QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Ładowanie ...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Ładowanie ... Ikona w zasobniku systemowym</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -7023,887 +7361,898 @@ Dostępne opcje: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Widok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Pokazuje lub ukrywa panel elementów</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Wstaw kolumnę</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Kaskada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Wklej</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Kopiuj</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Wytnij</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Odznacz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Edycja</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Usuń kolumnę</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Zapisz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Zapisz jako</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Eksportuj</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>&Okna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Zamknij</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Plik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Drukuj</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Odwróć zaznaczenie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Tryb edycji</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Ten panel zawiera listę czynności wykonanych w bieżącym arkuszu. Kliknij wykonaną czynność z listy aby powrócić do etapu edycji schematu po jej zastosowaniu.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Kolor tła biały / szary</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Wyświetla tło arkusza w kolorze białym lub szarym</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Wyświetl siatkę</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Pokaż lub ukryj sietkę arkuszy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Właściwości arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Wstaw arkusz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Usuń arkusz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Tryb podglądu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mozaika</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Eksportuj do pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Eksportuj jeden lub kilka arkuszy bierzącego projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Eksportuj do farmatu CVS</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Menedżer listw zaciskowych (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Wtyczka do tworzenia listw zaciskowych</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Wyeksportuj listę nazw przewodów</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Wyeksportuj wewnętrzną bazę danych projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nowy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Tworzy nowy projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Otwiera istniejący projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Zamyka bieżący projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Zapisuje bieżący projekt i wszystkie arkusze należące do projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Zapisuje bieżący projekt z inną nazwą pliku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Wstaw linię</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Usuń wiersz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Wstawia kolumnę do arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Usuwa kolumnę z arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Dodaje wiersz do arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Usuwa wiersz z arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Usuwa zaznaczenie elementów w arkuszu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Zaznacza wszystkie elementy w arkuszu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Usuwa zaznaczenie wszystkich elementów w arkuszu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Powiększa arkusz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Pomniejsza arkusz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Dostosowuje powiększenie w celu pokazania całej zawartości bez obramowania</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Dostosowuje powiększenie do obramowania arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Wstaw linię</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Wstaw prostokąt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Wstaw elipsę</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Wstaw wielokąt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Eksportuje bieżącą arkusz do innego formatu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Drukuje jeden lub więcej arkuszy bieżącego projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Głębokość</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Grupa</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Wkleja elementy ze schowka do arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Edytuje właściwości arkusza (rozmiar, informacje w tabliczce rysunkowej, właściwości przewodu...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Podgląd arkusza bez możliwości edycji</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Narzędzia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Otwórz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Otwórz plik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Bez powiększenia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Obróć</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Zakończ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Usuń</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Zaznacz wszystko</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Dostosuj powiększenie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Pomniejsz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Powiększ</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Cofnij</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Przywróć</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Przywróć trasy przewodów</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Pokazuje lub ukrywa główny pasek narzędzi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Pokazuje lub ukrywa pasek narzędzi Widok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Pokazuje lub ukrywa pasek narzędzi Schemat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Widok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Schemat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Wstaw pole tekstowe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Bez zmian</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Pokazuje lub ukrywa listę zmian</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Edycja zaznaczonej pozycji</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Grupowanie zaznaczonych tekstów</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Obraca zaznaczone elementy i teksty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Obraca zaznaczone teksty o dowolny kąt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Znajdź/zastąp</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Ostatnio otwarte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Projekt %1 zapisany w kataligu: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Wydaje się, że plik, który próbujesz otworzyć, nie jest do odczytu. Dlatego też nie można go otworzyć. Sprawdź uprawnienia do plików.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Wydaje się, że projektu, który próbujesz otworzyć, nie można zapisać. Będzie on otwarty w trybie tylko do odczytu.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>za pomocą kart</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>za pomocą okien</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Pokaż projekty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Właściwości projektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Wyczyść projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Projektu nie można otworzyć</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Wydaje się, że plik %1 nie jest plikiem projektu QElectroTech. Dlatego też nie można go otworzyć.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Cofnij</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Kliknij wykonaną czynność z listy, aby powrócić do etapu edycji schematu po jej zastosowaniu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Orientacja tekstów</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Znajdź w panelu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Wstaw obraz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Wstaw spis arkuszy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Powiększenie zawartości</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Zamyka QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Cofa poprzednią akcję</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Przywraca cofniętą akcję</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Umieszcza zaznaczone elementy w schowku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Kopiuje zaznaczone elementy do schowka</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Odznacza zaznaczone elementy i zaznacza odznaczone elementy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Wyszukuje zaznaczony element w panelu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Przywraca trasy przewodów, niezależnie od zmian wprowadzonych przez użytkownika</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Automatyczne wstawianie przewodu (ów)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projekty</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Kolekcje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Wstawia automatycznie przewód (y), jeżeli jest to możliwe</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Przywraca domyślny poziom powiększenia</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Pokazuje otwarte projekty w oknach</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Wstaw spis elementów</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Pokazuje otwarte projekty w kartach</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Pozwala zaznaczać elementy</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Wstaw plan listwy zaciskowej</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Wstaw pole tekstowe do bieżącego arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Wstaw obraz do bieżącego arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Wstaw linię do bieżącego arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Wstaw prostokąt do bieżącego arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Wstaw elipsę do aktualnego arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Wstaw wielokąt do bieżącego arkusza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Wstaw plan listwy zaciskowej w bieżącym arkuszu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Wstawienie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Projekty QElectroTech (*.qet);;Pliki XML (*.xml);;Wszystkie pliki (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Nie można otworzyć pliku</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Wydaje się, że plik %1 który próbujesz otworzyć nie istnieje.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Otwórz plik tylko do odczytu</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7913,7 +8262,7 @@ Dostępne opcje: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7923,135 +8272,130 @@ Dostępne opcje: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Podwójne kliknięcie zamyka kształt, kliknięcie prawym przyciskiem myszki cofa ostatni punkt</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Edycja elementu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Edycja pola tekstowego</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Edycja obrazu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Edycja właściwości przewodu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Edycja zaznaczonego objektu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Wystąpił błąd podczas otwierania pliku %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Aktywny projekt « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Błąd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Prezentuje okna w postaci mozaiki</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Prezentuje okna w postaci kaskady</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Następny projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Poprzedni projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Uaktywnia następny projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Uaktywnia poprzedni projekt</translation> @@ -8256,53 +8600,53 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>importuj element i zmień jego rozmiar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Wstaw linię</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Wstaw elipsę</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Wstaw wielokąt</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Wstaw tekst</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Wstaw łuk</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Wstaw terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Cofnij</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Przywróć</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>W przypadku braku terminala element nie może być połączony z innymi elementami za pomocą przewodów.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Bez zmian</translation> </message> @@ -8347,13 +8691,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Edytuj informacje autora</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Części</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Głębokość</translation> @@ -8369,12 +8713,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Edytuj właściwiści elementu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Wstaw dynamiczne pole tekstowe</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Kliknij dwukrotnie aby zamknąć kształt, kliknij prawym klawiszem aby cofnąć ostatni punkt</translation> </message> @@ -8399,26 +8743,26 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Wklej z...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Zmodyfikowano]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [tylko do odczytu]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Edytor elementów</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>wybranej części.</numerusform> @@ -8427,24 +8771,24 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Brak terminala</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Błąd</b>:<br>Odsyłacze do arkuszy muszą zawierać jeden terminal.<br><b>Rozwiązanie</b>:<br>Sprawdź czy element zawiera tylko jeden terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Weryfikacja elementu zakończona</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8454,32 +8798,32 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> i</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Błędy</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Brak terminala</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Dodaj nieedytowalny tekst elementu w schematach</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Dodaj edytowalny tekst elementu w schematach</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translatorcomment> %n ostrzeżeń</translatorcomment> @@ -8490,13 +8834,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Plik %1 nie istnieje.</translation> @@ -8508,254 +8852,254 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Widok</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Nie można otworzyć pliku %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Ten plik nie jest poprawnym dokumentem XML</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Błąd</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Edycja w trybie tylko do odczytu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Nie masz uprawnień do modyfikacji tego elementu. Edycja w trybie tylko do odczytu.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Błąd</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Nie można zapisać do tego pliku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Nie można zapisać elementu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Zbyt dużo elementów podstawowych, lista nie zostanie wygenerowana: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Uwaga</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Importowanie dużego pliku dxf może zająć trochę czasu proszę czekać podczas importowania...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>importuj element i zmień jego rozmiar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>Elementy QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Nie można otworzyć pliku</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Wydaje się, że plik %1 który próbujesz otworzyć nie istnieje.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Zapisanie nie powidło się</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Zapisanie nie powiodło się, wymagane warunki nie zostały spełnione</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Otwórz plik</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Elementy QElectroTech (*.elmt);;Pliki XML (*.xml);;Wszystkie pliki (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Odśwież element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Ostrzeżenia</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Ten element został zmodyfikowany od ostatniego zapisu. Jeśli go odświeżysz, zmiany zostaną utracone. Czy na pewno chcesz odświeżyć ten element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Zapisz jako</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Elementy QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Zapisać bieżący element?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Chcesz zapisać element %1 ?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Nieistniejący element.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Element nie istnieje.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Wybrana ścieżka dostępu, nie prowadzi do elementu.</translation> @@ -8776,7 +9120,7 @@ wymagane warunki nie zostały spełnione</translation> <translation>&Wklej</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Wstaw prostokąt</translation> </message> @@ -8923,48 +9267,48 @@ wymagane warunki nie zostały spełnione</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Uwaga</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projekt « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projekt %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Projekt bez tytułu</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [tylko do odczytu]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [zmieniony]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8972,13 +9316,13 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Wystąpił błąd podczas integracji szablonu.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8987,7 +9331,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> Obecnie używasz QElectroTech w wersji %2</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8996,32 +9340,32 @@ Que désirez vous faire ?</source> Co chcesz zrobić?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>Projekt, który próbujesz otworzyć, jest częściowo zgodny z twoją wersją %1 QElectroTech. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>Dla pełnej kompatybilności, otwórz ten projekt z wersją 0.8 lub 0.80 QElectroTech, zapisz projekt i otwórz go ponownie z tą wersją. Co chcesz zrobić?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Ostrzeżenie </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Otwieranie projektu trwa...</b><br/>Tworzenie arkusza</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Otwieranie projektu trwa...</b><br/>Konfiguracja odsyłaczy</p></translation> </message> @@ -9059,139 +9403,138 @@ Co chcesz zrobić?</translation> <translation>Wpisz nazwę kopii dla powielanego szablonu</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Nowy</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Otwórz</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Otwórz z pliku</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Zapisz</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Zapisz jako</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Zapisz do pliku</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Zakończ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Zarządzanie logo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Powiększ</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Pomniejsz</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Dostosuj powiększenie</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Bez powiększenia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Zapisz jako</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Szablony tabliczek rysunkowych QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Scal komórki</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&Wytnij</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Kopiuj</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Wklej</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Edytuj informacje dodatkowe</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Wstaw &wiersz</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Wstaw &kolumnę</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Podziel komórki</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9210,144 +9553,145 @@ Co chcesz zrobić?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Plik</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Edycja</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Widok</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Narzędzia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Edycja</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Widok</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Bez zmian</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Cofnij</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Właściwości komórki</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Zmodyfikowano]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[tylko do odczytu]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Edytor szablonów tabliczki rysunkowej</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Błąd</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Otwórz szablon</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Otwórz plik</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Szablony tabliczek rysunkowych QElectroTech (*%1);;Pliki XML (*.xml);;Wszystkie pliki (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Zapisz szablon jako</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Edycja informacji dodatkowych</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Możesz wykorzystać to puste pole na informacje o autorze tabliczki rysunkowej, licencji i inne przydatne informacje.</translation> </message> @@ -9935,18 +10279,18 @@ Co chcesz zrobić?</translation> <translation>Właściwości projektu</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Wybierz obraz...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Pliki graficzne (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9955,7 +10299,7 @@ Co chcesz zrobić?</translation> <translation>Błąd</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Nie można załadować obrazu.</translation> </message> @@ -10387,24 +10731,24 @@ Czy chcesz ją zastąpić?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Typ</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Komentarz</translation> @@ -10412,16 +10756,16 @@ Czy chcesz ją zastąpić?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10751,23 +11095,23 @@ Czy chcesz ją zastąpić?</translation> <translation>Tworzenie przewodów</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Aby zainstalować wtyczkę qet_tb_generator<br>Odwiedź:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Wymagany python 3.5 or above.<br><B><U> Pierwsza instalacja w Windows</B></U><br>1. Instalacja, wymagany, python 3.5 lub nowszy<br> Odwiedź :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Aktualizacja w 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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translatorcomment>niepewne</translatorcomment> <translation>Aby zainstalować wtyczkę qet_tb_generator<br>Odwiedź:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Pierwsza instalacja na macOSX</B></U><br>1. Zailstaluj, 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 Uruchom Profile.command script<br>ponieważ program używa zakodowanego na stałe 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></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Aby zainstalować wtyczkę qet_tb_generator<br>Odwiedź:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Wymagany python 3.5 lub nowszy.<br><br><B><U> Pierwsza instalacja w systemie Linux</B></U><br>1. sprawdź czy zainstalowano pip3 installed: pip3 --version<br>Jeżeli nie zainstalij przez: sudo apt-get install python3-pip<br>2. Zainstaluj program: sudo pip3 install qet_tb_generator<br>3. Uruchom program: qet_tb_generator<br><br><B><U> Aktualizacja w systemie Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Błąd podczas uruchamiania wtyczki qet_tb_generator</translation> </message> @@ -10796,7 +11140,7 @@ Czy chcesz ją zastąpić?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>to jest błąd w kodzie</translation> @@ -11030,7 +11374,7 @@ Czy chcesz ją zastąpić?</translation> <translation>Otwórz element</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Importuj plik dxf</translation> </message> @@ -11186,6 +11530,11 @@ Pobierz go, klikając poniższy link i rozpakuj w folderze instalacyjnym</transl <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11232,55 +11581,306 @@ Dodaj nową tabelę lub dostosuj istniejącą, aby wyświetlić wszystkie inform <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>figury</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>linia</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Wstaw punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Usuń punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Rozmiar</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Wstaw punkt do wielokąta</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Usuń punkt z wielokąta</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Zmiana %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>prostokąt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>elipsa</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>wielokąt</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12207,150 +12807,177 @@ Pozostałe pola nie są używane.</translation> <translation>Forma</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Linia</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Grubość</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Ciągła</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Kreskowa</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Kropkowa</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Kreskowo-kropkowa</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Kreskowa z dwiema kropkami</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Kreskowa nietypowa</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Typ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Kolor</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Wypełnienie</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Typ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Brak</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Szerokość</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Wysokość</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Ciągła</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Wypełnienie 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Wypełnienie 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Wypełnienie 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Wypełnienie 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Wypełnienie 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Wypełnienie 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Wypełnienie 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Linie pionowe</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Linie poziome</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Siatka</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Linie ukośne (w dół)</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Linie ukośne (w górę)</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Siatka ukośna</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Zablokuj położenie</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Wielokąt zamknięty</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12359,31 +12986,61 @@ Pozostałe pola nie są używane.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Zmiana obrysu kształtu</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Zmiana wypełnienia</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Zamknij wielokąt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translatorcomment>niepewne</translatorcomment> <translation>Zmiana prostej formuły</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>zmiana właściwości prostej formuły</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_pt.ts b/lang/qet_pt.ts index ece2ffe21..c5ec37074 100644 --- a/lang/qet_pt.ts +++ b/lang/qet_pt.ts @@ -619,59 +619,59 @@ form <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -848,6 +848,14 @@ form <translation type="unfinished">Dimensões do Diagrama</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1423,13 +1431,217 @@ form <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Erro</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1491,39 +1703,39 @@ form <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Erro</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2058,7 +2270,7 @@ form <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2674,90 +2886,95 @@ form <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished">Geral</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">Escreva : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished">Encontrar no painel</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished">Editar elemento</translation> </message> @@ -4553,7 +4770,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [não utilizado no projecto]</translation> </message> @@ -4786,6 +5003,29 @@ form <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4798,22 +5038,120 @@ form </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> - <source>Verrouiller la position</source> + <source>Largeur</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation type="unfinished">%</translation> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Antevisão</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6598,117 +6936,117 @@ form <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Apagar os elementos não usados neste projecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Apagar as categorias vazias</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Projecto em modo de leitura</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Este projecto está em modo de leitura. Não pode ser limpo.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Remover os modelos de moldura não utilizados no projecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Limpar o projecto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Gravar como</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projecto</translation> @@ -6749,136 +7087,136 @@ Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished">Molduras do utilizador</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Sair</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Esconder</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Ver</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Esconder os editores de esquemas</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Mostrar os editores de esquemas</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Esconder os editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Mostrar os editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Esconder todos os editores de moldura</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Mostrar todos os editores de molduras</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Novo editor de esquema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Novo editor de elemento</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Fechar QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimizar QElectroTech para a bandeja de sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Restaurar QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Editores de esquemas</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Editores de molduras</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Utilização: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6895,7 +7233,7 @@ Opções disponiveis: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6904,33 +7242,33 @@ Opções disponiveis: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Define a directoria da colecção de elementos </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Definir a pasta da colecção de modelos de molduras¶</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Define a directoria de configuração </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Define a directoria dos ficheiros de linguagem</translation> @@ -6984,31 +7322,31 @@ Opções disponiveis: <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished">Configurar QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>A carregar...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>A carregar... Ícone da bandeja de sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> @@ -7017,882 +7355,893 @@ Opções disponiveis: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Ve&r</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Mostra ou não o painel de elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Adicionar uma coluna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Cascata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>&Colar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Copiar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Cort&ar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Seleccionar nada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Editar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Eliminar uma coluna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Guardar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Guardar como</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Exportar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Ja&nelas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Fechar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Ficheiro</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Imprimir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Inverter a selecção</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Modo de selecção</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Modo de visualização</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mosaico</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Novo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished">Adicionar uma linha</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished">Apagar uma linha</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished">Adicionar uma linha</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished">Adicionar um rectângulo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished">Adicionar uma elipse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished">Profundidade</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Ferramentas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Abrir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Abrir um ficheiro</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Sem zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Rodar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Sair</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Apagar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Seleccionar tudo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Ajustar à janela</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Diminuir Zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Aumentar Zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Refazer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Reinicializar os condutores</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Mostra ou esconde a barra de ferramentas principal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Mostra ou esconde a barra de ferramentas Mostrar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Mostra ou esconde a barra de ferramentas Esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>mostra</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Adicionar um campo de texto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Sem modificações</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Mostra ou esconde a lista de acções modificadas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Roda os elementos e textos seleccionados</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Roda os textos seleccionados com ângulo definido</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>A leitura do ficheiro que está a tentar abrir não parece ser possível e, por isso, não pode ser aberto. Por favor verifique as permissões do ficheiro.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>O projecto que está a tentar abrir não parece ter prmissões de escrita. Será aberto em modo só de leitura.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Usar separadores</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>usar janelas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Mostra os projectos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Propriedades do projecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Limpar o projecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Não é possível abrir o projecto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>O ficheiro %1 não é um ficheiro de projecto QElectroTech. Por esse motivo não é possível abrir o ficheiro.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Clicar sobre uma acção para voltar atrás na edição do seu esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Orientar os textos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation type="unfinished">Encontrar no painel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Fecha QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Anula a acção anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Restaura a acção anulada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Transfere os elementos seleccionados para a área de transferência</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Copia os elementos seleccionados para a área de transferência</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Anula a selecção dos elementos seleccionados e selecciona os elementos não seleccionados anteriormente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Calcula novamente os caminhos dos condutores sem ter em conta as modificações</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished">Projectos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Restaura o Zoom padrão</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Apresenta os projectos abertos em janelas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Apresenta os projectos abertos em separadores</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Permite seleccionar elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished">Não é possível abrir o ficheiro</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished">Abrir o ficheiro em modo só de leitura</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7901,7 +8250,7 @@ Opções disponiveis: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7910,140 +8259,135 @@ Opções disponiveis: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Erro</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Dispôe as janelas em mosaico</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Dispôe as janelas em cascata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Projecto seguinte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Projecto anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Activa o projecto seguinte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Activa o projecto anterior</translation> @@ -8257,47 +8601,47 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Adicionar uma linha</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Adicionar uma elipse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Adicionar um polígono</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Adicionar texto</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Adicionar um arco</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Adicionar um terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Refazer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>No modification</translation> </message> @@ -8342,13 +8686,13 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Editar as informações sobre o autor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Partes</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Profundidade</translation> @@ -8374,26 +8718,26 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Colar a partir de...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificado]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation>[só leitura]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Editor de elementos</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n parte seleccionada.</numerusform> @@ -8401,18 +8745,18 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Borne em falta</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished">Borne em falta</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>O ficheiro %1 não existe.</translation> @@ -8424,93 +8768,93 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished">Mostrar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Não é possível abrir o ficheiro %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Este ficheiro não é um documento XML válido</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Erro</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Edição modo de leitura</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Não tem permissões para editar esta categoria. Será aberta em modo de leitura.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Erro</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Não é possível escrever neste ficheiro</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Não é possível guardar o elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8519,12 +8863,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8533,214 +8877,214 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Aviso</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">Elementos QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Não é possível abrir o ficheiro</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Abrir um ficheiro</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Elementos QElectroTech (*.elmt);;XML files (*.xml);;All files (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Recarregar o elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished">Avisos</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Este elemento foi modificado desde a última vez que o guardou. Se o recarregar as alterações serão perdidas. Tem a certeza que deseja recarregar este elemento?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Gravar como</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Elementos QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Guardar o elemento actual?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Deseja gravar o elemento %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Elemento não existente.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>O elemento não existe.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>O caminho virtual escolhido não corresponde a um elemento.</translation> @@ -8761,7 +9105,7 @@ veuillez patienter durant l'import...</source> <translation>&Colar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Adicionar um rectângulo</translation> </message> @@ -8909,48 +9253,48 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Aviso</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projecto %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Projecto sem título</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [só leitura]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8958,50 +9302,50 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Aconteceu um erro durante a integração do modelo.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -9039,139 +9383,138 @@ Que désirez vous faire ?</source> <translation>Para duplicar este modelo digite o nome desejado para esta cópia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Novo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Abrir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Abrir a partir de um ficheiro</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Guardar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Guardar como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Salvar como arquivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Sair</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Gerir logotipos</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Aumentar zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Diminuir zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Ajustar à janela</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Sem zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Guardar em</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Modelos de molduras QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Unir as células</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Cort&ar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>Cop&iar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Colar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Editar informações complementares</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>adicionar uma &linha</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Adicionar uma &coluna</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Separar as células</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9190,144 +9533,145 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Ficheiro</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Editar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>Ve&r</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Ferramentas</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Edição</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>mostrar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Sem modificações</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Propriedades da célula</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificado]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Modo leitura]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectrotech - Editor de modelos de moldura</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Erro</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Abrir um modelo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Abrir um ficheiro</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Modelos de molduras QElectrotech (*%1);;Ficheiros XML (*.xml);;Todos os ficheiros (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Guardar o modelo como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Editar informações complementares</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Utilize os campos livres para colocar o autor da moldura, licença, ou qualquer informação que julgue pertinente.</translation> </message> @@ -9891,7 +10235,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -10115,23 +10459,23 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -10161,7 +10505,7 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -10350,22 +10694,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10508,24 +10852,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished"></translation> @@ -10533,16 +10877,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11105,6 +11449,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11149,52 +11498,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation type="unfinished"></translation> </message> @@ -12088,176 +12688,233 @@ form </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> - <source>Trait</source> + <source>Géométrie</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> + <source>Trait</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished">Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished">tracejado</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished">Tracejado</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished">Nenhum</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation type="unfinished">Polígono fechado</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_pt_BR.ts b/lang/qet_pt_BR.ts index a580de958..80e6f56f5 100644 --- a/lang/qet_pt_BR.ts +++ b/lang/qet_pt_BR.ts @@ -586,7 +586,7 @@ <translation>Formulário</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Status do Projeto:</translation> </message> @@ -621,54 +621,54 @@ <translation>Para</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Política de Atualização</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Condutor</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Apenas Novo</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Ambos</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Desabilitar</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Elemento</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Somente existente</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Página</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Existente</translation> </message> @@ -848,6 +848,14 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <translation>Exibir malha</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1414,13 +1422,217 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <translation>Adicionar %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>uma imagem</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Selecione uma imagem...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Erro</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Não é possível carregar a imagem.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1472,40 +1684,40 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <translation>Criar um modelo</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Conectar os terminais selecionados</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Sem título</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation>Modelo salvo</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation>O modelo foi salvo com sucesso em: %1</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation>Erro</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation>Não foi possível gravar o arquivo.</translation> </message> @@ -2045,7 +2257,7 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation>Numerar automaticamente um elemento</translation> @@ -2656,101 +2868,106 @@ O nome exibido do elemento é alterado separadamente nas propriedades do element <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Geral</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Elemento </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Nome: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Página: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Tipo: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Subtipo: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Posição: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotação: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Dimensões: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Terminais: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation>Número máximo de contatos escravos definidos: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation>Número de contatos escravos utilizados: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Localização: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Travar a posição</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Procurar no painel</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Editar o elemento</translation> </message> @@ -4568,7 +4785,7 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <translation>Este é um modelo de bloco de legenda, que pode ser aplicada a uma página.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [não utilizado neste projeto]</translation> </message> @@ -4799,6 +5016,29 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <translation>Vertical</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished">Redefinir</translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4808,23 +5048,121 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Largura</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Altura</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Travar a posição</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Dimensão da imagem</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Redimensionar uma imagem</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Visualização</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -5696,7 +6034,7 @@ Por favor, use o editor avançado para isso.</translation> <message> <location filename="../sources/autoNum/ui/numparteditorw.ui" line="79"/> <source>Mettre à 0 pour un chiffre qui n'avance que par le report d'un chiffre cyclique suivant (ex: le "0" de "0.7")</source> - <translation>Defina como 0 para um dígito que só avança pelo transporte de um dígito cíclico seguinte (ex.: o "0" de "0.7")</translation> + <translation>Defina como 0 para um dígito que só avança pelo transporte de um dígito cíclico seguinte (ex.: o "0" de "0.7")</translation> </message> <message> <location filename="../sources/autoNum/ui/numparteditorw.ui" line="110"/> @@ -6595,118 +6933,118 @@ As seguintes variáveis ​​são incompatíveis: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>O projeto foi modificado. Você deseja salvar as alterações?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salvar como</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>sem nome</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Projeto QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>Nenhum projeto ativo</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Excluir esta página?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation>Tem certeza de que deseja excluir esta página do projeto?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Projeto em modo somente de leitura</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Este projeto está em modo somente de leitura. Portanto, não é possível limpá-lo.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Excluir os modelos de blocos de legenda não utilizados no projeto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Excluir elementos não utilizados dentro deste projeto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Excluir as categorias vazias</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Limpar o projeto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Acrescentar uma página</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Volte para o início do projeto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Ir para o final do projeto</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation>Ir uma página para a esquerda</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation>Ir uma página para a direita</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Este projeto não contém nenhuma página</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Abra o projeto atual...</b><br/>Crie as guias da página:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projeto</translation> @@ -6796,167 +7134,167 @@ Você deseja salvar as alterações?</translation> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Configurar o QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Carregando...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Carregando... Ícone da bandeja do sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>Sai&r</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Esconder</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Mostrar</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Esconder todos os editores de esquema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Mostrar todos os editores de esquemas</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Esconder os editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Mostrar todos os editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Esconder todos os editores de blocos de legenda</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Mostrar todos os editores de blocos de legenda</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Novo editor de esquemas</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Novo editor de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Fechar o aplicativo QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimizar QElectroTech para a bandeja do sistema</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Restaurar QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Editores de esquemas</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Editores de elementos</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Editores de blocos de legenda</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>O arquivo de restauração a seguir foi encontrado,<br>Deseja abri-lo?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Os arquivos de restauração a seguir foram encontrados,<br>Deseja abri-los?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Restaurar o arquivo</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation>Relatório de falha</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation>O QElectroTech não foi encerrado corretamente na última execução. Estas são as últimas mensagens registradas antes da parada -- você pode salvá-las para anexar a um relatório de bug.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation>Relatório de diagnóstico</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation>Contém as últimas mensagens de registro desta sessão. Verifique o conteúdo antes de anexá-lo a um relatório de bug público.</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Utilização : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6965,7 +7303,7 @@ Estas são as últimas mensagens registradas antes da parada -- você pode salv </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6982,35 +7320,35 @@ Opções disponíveis: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Define a pasta da coleção de elementos </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Definir a pasta da coleção de modelos de blocos de legenda </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Define a pasta de configuração </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR Define a pasta de dados </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Define a pasta dos arquivos de idioma @@ -7020,916 +7358,927 @@ Opções disponíveis: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projetos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Coleções</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Sem modificações</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Clique sobre uma ação para desfazer as alterações que você efetuou no seu esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Este painel lista as diferentes ações efetuadas sobre a página atual. Clicar sobre uma ação permite retornar ao estado do esquema logo após sua aplicação.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&xportar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Imprimir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>Sai&r</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Refazer</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Desfaz a ação anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Refaz a ação anulada</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Cor&tar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Co&piar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>C&olar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Transfere os elementos selecionados para a área de transferência</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Copia os elementos selecionados para a área de transferência</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Cola os elementos da área de transferência na página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Reinicializar os condutores</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Criação automática de condutor(es)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Utilizar a criação automática de fios quando possível</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Cor de fundo branco/cinza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Exibe a cor de fundo da páginas em branco ou cinza</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Exibir a grade</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Mostrar ou ocultar a grade das páginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Propriedades da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Propriedades do projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Acrescentar uma página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Excluir esta página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Limpar o projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Adicionar um resumo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Usando abas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Usando janelas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Modo de seleção</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Modo de visualização</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mosaico</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation>Editor de esquemas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Exportar em pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Exportar uma ou mais páginas do projeto atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation>Corte automático de condutor(es)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation>Cortar automaticamente os condutores existentes ao posicionar um elemento</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation>Exibir as guias</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation>Exibe ou oculta as guias</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Exportar em formato CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Gerenciador de régua de terminais (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Iniciar o plugin de criação de terminal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Exportar a lista de nomes dos condutores</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation>Exportar o plano de fiação</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation>Numeração automática dos terminais</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Exportar o banco de dados interno do projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Cascata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Projeto seguinte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Projeto anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Novo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Abrir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Salvar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Salvar como</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Fechar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Cria um novo projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Abre um projeto existente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Fecha o projeto atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Salva o projeto atual e todas as suas páginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Salva o projeto atual com outro nome de arquivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Adicionar uma coluna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Eliminar uma coluna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Adicionar uma linha</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Excluir uma linha</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Adiciona uma coluna à página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Elimina uma coluna da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Aumenta a altura da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Diminui a altura da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Excluir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Girar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation>Girar o grupo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Escolha a orientação dos textos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Procurar no painel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Editar o item selecionado</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Remove os elementos selecionados da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Gira os elementos e textos selecionados</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation>Gira a seleção como um grupo em torno do seu centro, em vez de cada elemento no próprio lugar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Gira os textos selecionados para um ângulo definido</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Procurar o elemento selecionado no painel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Selecionar tudo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Desmarcar todos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Inverter a seleção</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Seleciona todos os elementos da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Desmarca todos os elementos da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Alterna a seleção dos elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Aumentar Zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Diminuir Zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Zoom sobre o conteúdo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Ajustar à janela</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Restaurar zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Aumenta a página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Diminui a página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Ajusta o zoom para exibir toda a página independentemente das bordas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Ajusta o zoom exatamente sobre as bordas da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Restaura o zoom padrão</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Adicionar um campo de texto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Adicionar uma imagem</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation>Adicionar um PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Adicionar uma linha</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Adicionar um retângulo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Adicionar uma elipse</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Adicionar uma linha poligonal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Exportar a página atual em outro formato</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Imprimir uma ou mais páginas do projeto atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Fechar o aplicativo QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Redefinir os caminhos dos condutores ignorando as modificações do usuário</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Edite as propriedades da página (dimensões, informações do bloco de legenda, propriedades dos condutores...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Exibe os vários projetos abertos em janelas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Exibe os vários projetos abertos em abas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Permite selecionar elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Permite visualizar a página, porém sem poder editá-la</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Dispõe as janelas lado a lado</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Adicionar nomenclatura</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Dispõe as janelas em cascata</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Ativa o próximo projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Ativa o projeto anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Agrupar textos selecionados</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Adicionar um plano de terminal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Adiciona um campo de texto a página atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Adiciona uma imagem a página atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation>Adiciona uma página do PDF na página atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Adiciona uma linha a página atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Adiciona um retângulo a página atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Adiciona uma elipse a página atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Adiciona uma polilinha na página atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Adiciona um plano de bloco terminal na folha atual</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Localizar / substituir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation>Ir para um elemento</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation>Localiza e seleciona rapidamente um elemento da página</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Ferramentas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Exibir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Esquema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Adicionar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Profundidade</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>Ar&quivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Editar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>E&xibir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Ja&nelas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>Abertos &recentemente</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Alterna a exibição da barra de ferramentas "Principal"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Alterna a exibição da barra de ferramentas "Exibir"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Alterna a exibição da barra de ferramentas "Esquema"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Alterna a exibição do painel de elementos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Alterna a exibição da lista de alterações</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Exibir os projetos</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Projeto %1 salvo na pasta: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Abrir um arquivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Projetos QElectroTech (*.qet);;Arquivos XML (*.xml);;Todos os arquivos (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Não é possível abrir o arquivo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Aparentemente o arquivo %1 que você está tentando abrir não existe.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Aparentemente o arquivo que você está tentando abrir não é acessível para leitura. Portanto, é impossível abri-lo. Por favor, verifique as permissões do arquivo.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Abrir o projeto em modo somente de leitura</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Aparentemente o projeto que você está tentando abrir não é acessível para escrita. Portanto ele será aberto em modo somente de leitura.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Não é possível abrir o projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Parece que o arquivo %1 não é um arquivo de projeto QElectroTech. Portanto, ele não pode ser aberto.</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation> @@ -7938,7 +8287,7 @@ Opções disponíveis: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation> @@ -7947,107 +8296,102 @@ Opções disponíveis: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation>Fontes do projeto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Clique duas vezes para completar a forma, clique com o botão direito para cancelar o último ponto</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation>Não é possível excluir o terminal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation>A exclusão não pode ser realizada porque a seleção contém um ou mais terminais em ponte e/ou pertencentes a um terminal de múltiplos níveis. Remova as pontes e/ou exclua os níveis dos terminais envolvidos para poder excluí-los</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Grupo</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Editar o elemento</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Editar o campo de texto</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Editar a imagem</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Editar o condutor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Editar o objeto selecionado</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Ocorreu um erro ao abrir o arquivo %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Ativar o projeto « %1 »</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation>Tem certeza de que deseja excluir esta página?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation>Excluir páginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation>Tem certeza de que deseja excluir as %1 páginas selecionadas?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation>Excluir %1 páginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation>Mover as páginas</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Erro</translation> @@ -8296,17 +8640,17 @@ Remova as pontes e/ou exclua os níveis dos terminais envolvidos para poder excl <translation>Editar as propriedades do elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Refazer</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Profundidade</translation> @@ -8332,52 +8676,52 @@ Remova as pontes e/ou exclua os níveis dos terminais envolvidos para poder excl <translation>Restaurar zoom</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Adicionar uma linha</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Adicionar um retângulo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Adicionar uma elipse</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Adicionar um polígono</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Adicionar texto</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Adicionar um arco</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Adicionar um terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Adicione um campo de texto dinâmico</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Clique duas vezes para completar a forma, clique com o botão direito para cancelar o último ponto</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Partes</translation> @@ -8403,31 +8747,31 @@ Remova as pontes e/ou exclua os níveis dos terminais envolvidos para poder excl <translation>Colar a partir de...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificado]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [somente leitura]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Sem modificações</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Editor de elementos</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n parte selecionada.</numerusform> @@ -8435,35 +8779,35 @@ Remova as pontes e/ou exclua os níveis dos terminais envolvidos para poder excl </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Sem terminais</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Na ausência de terminais, o elemento não poderá ser conectado a outros elementos por meio de fios.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Sem terminais</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Erro</b>:<br>Os relatórios de página devem ter um único terminal.<br><b>Solução</b>:<br>Verifique se o elemento tem somente um único terminal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Verificação deste elemento gerado</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8472,28 +8816,28 @@ Remova as pontes e/ou exclua os níveis dos terminais envolvidos para poder excl </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> e</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Erros</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Avisos</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>O arquivo %1 não existe.</translation> @@ -8505,167 +8849,167 @@ Remova as pontes e/ou exclua os níveis dos terminais envolvidos para poder excl <translation>Exibir</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Não é possível abrir o arquivo %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Este arquivo não é um documento XML válido</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Erro</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Edição em modo somente de leitura</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Você não tem as permissões necessárias para editar este elemento. Portanto ele será aberto em modo somente de leitura.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Erro</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Não é possível escrever neste arquivo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Não é possível salvar o elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>Primitivas em excesso, lista não gerada: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation>Número de terminais incorreto</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation><br><b>Erro</b>:<br>As definições de condutor podem ter apenas um terminal.<br><b>Solução</b>:<br>Verifique se o elemento possui apenas um terminal.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation>Editor de elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Adicionar texto de elemento não editável em diagramas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Adicione texto do elemento que pode ser editado em diagramas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation>Exportar em SVG</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation>Imagem SVG (*.svg)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation>Falha na exportação</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation>Não foi possível gravar no arquivo « %1 ».</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Aviso</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>A importação de um dxf grande pode levar tempo aguarde enquanto importa...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Importar um elemento para redimensionar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>Elementos QElectroTech (*.elmt)</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8674,99 +9018,99 @@ aguarde enquanto importa...</translation> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Não é possível abrir o arquivo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Aparentemente o arquivo %1 que você está tentando abrir não existe.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Recarregar o elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Este elemento foi alterado desde que foi salvo pela última vez. Se você recarregar, essas alterações serão perdidas. Você realmente quer recarregar o elemento?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Falha ao salvar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Falha ao salvar, as condições não são válidas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salvar como</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Elementos QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Salvar o elemento atual?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Deseja salvar o elemento %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Abrir um arquivo</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Elementos QElectroTech (*.elmt);;Arquivos XML (*.xml);;Todos arquivos (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Elemento inexistente.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Este elemento não existe.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>O caminho virtual escolhido não corresponde a um elemento.</translation> @@ -8914,42 +9258,42 @@ as condições não são válidas</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projeto « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projeto %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Projeto sem título</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [somente leitura]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [Modificado]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation>Sistema de contatos modificado</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8960,19 +9304,19 @@ Os elementos escravos existentes não serão atribuídos automaticamente. Você Deseja continuar?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Ocorreu um erro durante a integração do modelo.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Aviso</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8981,7 +9325,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> Você está usando o QElectroTech na versão %2</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8990,32 +9334,32 @@ Que désirez vous faire ?</source> O que você deseja fazer?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Aviso </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>O projeto que você está tentando abrir é parcialmente compatível com sua versão %1 do QElectroTech. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>Para torná-lo totalmente compatível, abra este mesmo projeto com a versão 0.8 ou 0.80 do QElectroTech e salve o projeto e abra-o novamente com esta versão. O que você deseja fazer?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Abrindo o projeto atual...</b><br/>Criação das páginas</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Abertura do projeto...</b><br/>Configurando referências cruzadas</p></translation> </message> @@ -9053,127 +9397,126 @@ O que você deseja fazer?</translation> <translation>Para duplicar este modelo digite o nome desejado para a cópia</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Novo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Abrir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Abrir a partir de um arquivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Salvar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Salvar como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Salvar em um arquivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>Sai&r</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Cor&tar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>Co&piar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>C&olar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Gerenciar logotipos</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Editar informações complementares</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Aumentar Zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Diminuir Zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Ajustar à janela</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Restaurar zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Adicionar uma &linha</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Adicionar uma &coluna</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Unir as células</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Separar as células</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9192,156 +9535,157 @@ O que você deseja fazer?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation>Editor de blocos de legenda</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>Ar&quivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Editar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>E&xibir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Ferramentas</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Edição</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Exibir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Sem modificações</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Desfazer</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Propriedades da célula</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificado]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Somente leitura]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectrotech - Editor de modelos de bloco de legenda</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation>Erro</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation>Não foi possível salvar o modelo « %1 ».</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Abrir um modelo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Abrir um arquivo</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Modelos de bloco de legenda QElectrotech (*%1);;Arquivos XML (*.xml);;Todos os arquivos (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Salvar o modelo como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> - <translation>O nome « %1 » não é válido: não deve conter os seguintes caracteres: \ / : * ? " < > |</translation> + <translation>O nome « %1 » não é válido: não deve conter os seguintes caracteres: \ / : * ? " < > |</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salvar como</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Modelos de bloco de legenda QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Editar informações complementares</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Você pode utilizar este campo para indicar os autores do bloco de legenda, a licença do mesmo, ou qualquer outra informação que considere útil.</translation> </message> @@ -9460,18 +9804,18 @@ O que você deseja fazer?</translation> <translation>Adicionar </translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Selecione uma imagem...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Arquivo de imagem (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9480,7 +9824,7 @@ O que você deseja fazer?</translation> <translation>Erro</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Não é possível carregar a imagem.</translation> </message> @@ -10374,24 +10718,24 @@ Deseja substituí-lo?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation>Tipo</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation>Endereço</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Comentário</translation> @@ -10399,16 +10743,16 @@ Deseja substituí-lo?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation>Ref. cruzada</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10705,22 +11049,22 @@ Deseja substituí-lo?</translation> <translation>Criação do condutor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Para instalar o plugin qet_tb_generator - Visite :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Requer python 3.5 ou superior.<br><B><U> Primeira instalação no Windows</B></U><br>1. Instale, se necessário, python 3.5 ou superior<br>Visite :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U>Atualização no Windows</B></U> <br>python -m pip install --upgrade qet_tb_generator<br>>> o usuário pode iniciar em um terminal esse script neste diretório <br>C: \ users \ XXXX \ AppData \ Local \ Programas \ Python \ Python36-32 \ Scripts<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>Para instalar o plug-in qet_tb_generator<br>Acesse :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Primeira instalação no macOSX</B></U><br>1. Instale, se necessário, apenas o pacote python 3.11, <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 Execute o script Profile.command<br>porque o programa usa PATH codificado para localização Plug-in qet-tb-generator <br> Visite:<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>como fazer</a><br>2. pip3 install qet_tb_generator<br><B><U> Atualização no macOSX</B></U><br> pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Para instalar o plugin qet_tb_generator<br>Visite :<br><a> href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Requer python 3.5 ou superior.<br><br><B><U> Primeira instalação no Linux</B></U><br>1. verifique se o pip3 está instalado: pip3 --version<br>Se não for instalado com: sudo apt-get install python3-pip<br>2. Instale o programa: sudo pip3 install qet_tb_generator<br>3. Execute o programa: qet_tb_generator<br><br><B><U>Atualizar no Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Erro ao abrir qet_tb_generator plugin</translation> </message> @@ -10748,7 +11092,7 @@ Deseja substituí-lo?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>este é um erro no código</translation> @@ -10978,7 +11322,7 @@ Deseja substituí-lo?</translation> <translation>Abra um elemento</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Importar um arquivo dxf</translation> </message> @@ -11126,6 +11470,11 @@ Faça o download seguindo o link abaixo e descompacte-o na pasta de instalação <source>Impossible de rendre la page PDF.</source> <translation>Não foi possível renderizar a página PDF.</translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11173,52 +11522,303 @@ Adicione uma nova tabela ou ajuste a tabela existente para exibir todas as infor <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Adicionar um ponto</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Excluir este ponto</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Tamanho</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Adicionar um ponto a um polígono</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Excluir um ponto de um polígono</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Editar %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>uma linha</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>um retângulo</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>uma elipse</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>uma linha poligonal</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>uma forma</translation> </message> @@ -12152,150 +12752,177 @@ Os outros campos não são usados.</translation> <translation>Formulário</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Linha</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Espessura</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>tracejada</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Pontilhada</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Pontos e traços</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Traço ponto ponto</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Traço personalizado</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Tipo</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Cor</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Preenchimento</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Estilo</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Nenhum</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Largura</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Altura</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Linha sólida</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Densidade 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Densidade 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Densidade 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Densidade 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Densidade 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Densidade 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Densidade 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Horizontal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Vertical</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Cruz</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Diagonal atrás</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Diagonal à frente</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Diagonal em cruz</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Travar a posição</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Polígono fechado</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12304,30 +12931,60 @@ Os outros campos não são usados.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Editar a linha de um formulário</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Editar o preenchimento de um formulário</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Fechar o polígono</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Edite uma forma simples</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Modifica as propriedades de uma forma simples</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> @@ -14663,7 +15320,7 @@ Os outros campos não são usados.</translation> <message> <location filename="../sources/ui/terminalnumberingdialog.ui" line="20"/> <source>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."</source> - <translation>Esta função numera os terminais do projeto de acordo com sua posição. Terminais vazios ou bloqueados são ignorados. A marcação dos terminais deve ser configurada previamente como: '-X:AB'. A parte antes dos dois pontos (a régua de terminais) pode ter qualquer nome. 'AB' pode ser composto por dígitos ou letras.</translation> + <translation>Esta função numera os terminais do projeto de acordo com sua posição. Terminais vazios ou bloqueados são ignorados. A marcação dos terminais deve ser configurada previamente como: '-X:AB'. A parte antes dos dois pontos (a régua de terminais) pode ter qualquer nome. 'AB' pode ser composto por dígitos ou letras.</translation> </message> <message> <location filename="../sources/ui/terminalnumberingdialog.ui" line="34"/> diff --git a/lang/qet_ro.ts b/lang/qet_ro.ts index aed90d0e7..e8ad7e6f1 100644 --- a/lang/qet_ro.ts +++ b/lang/qet_ro.ts @@ -616,59 +616,59 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished">Folio</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -842,6 +842,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Rânduri :</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1408,13 +1416,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>o imagine</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Selectați o imagine...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Eroare</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Nu se poate încărca imaginea.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1471,39 +1683,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Nedenumit</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Eroare</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2037,7 +2249,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2647,90 +2859,95 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished">General</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">Tip : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Blochează poziția</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished">Găsește în panou</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished">Editare element</translation> </message> @@ -4510,7 +4727,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [nu sunt utilizate în proiect]</translation> </message> @@ -4740,6 +4957,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Vertical</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4749,22 +4989,120 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation type="unfinished">Blochează poziția</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation type="unfinished">Dimensiunea imaginii</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation type="unfinished">%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Previzualizare</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6527,118 +6865,118 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Proiectul a fost modificat. Doriți să se salveze modificările ?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Proiect deschis numai pentru citire</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Acest proiect este deschis numai pentru citire. Nu este posibil să fie curățat.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Șterge modelele de cartuș neutilizate în proiect</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Șterge elementele neutilizate din proiect</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Șterge categoriile goale</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Curăță proiectul</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salvează ca</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>nici un proiect activ</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Proiect</translation> @@ -6727,166 +7065,166 @@ Doriți să se salveze modificările ?</translation> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Configurare QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Se încarcă...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Se încarcă... Pictograma din bara de sistem</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Termină</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Ascunde</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Arată</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Ascunde editoarele de schemă</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Arată toate editoarele de schemă</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Ascunde toate editoarele de elemente</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Arată toate editoarele de elemente</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Ascunde toate editoarele de cartuș</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Arată toate editoarele de cartuș</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>Editor de schemă &nou</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>Editor de element &nou</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Închide aplicația QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Minimizează QElectroTech în bara de sistem</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Restaurează QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Editoare de schemă</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Editoare element</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation type="unfinished">Editoare cartuș</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Utilizare : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6895,7 +7233,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6912,32 +7250,32 @@ Opțiuni disponibile: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation>--common-elements-dir=DIR Definește dosarul colecției de elemente </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Definește dosarul colecției de cartușe</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Definește dosarul de configurare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation>--config-dir=DIR Definește dosarul care conține fișierele de limbă</translation> @@ -6946,964 +7284,975 @@ Opțiuni disponibile: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Anulări</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Nici o modificare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Apăsați pe o acțiune pentru a reveni la modificările efectuate schemei</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nou</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Deschide</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Închide</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Salvează</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Salvează ca</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&xportă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Tipărește</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Termină</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Anulează</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Refă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Ta&ie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Cop&iază</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>Li&pește</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished">Adaugă o linie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished">Elimină un rând</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Selectează tot</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Deselectează tot</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Inversează selecția</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished">Adâncime</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Șterge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Rotește</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Orientare texte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Găsește în panou</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Reinițializarea conductorilor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Adaugă un câmp text</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Adaugă o coloană</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Adaugă o imagine</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Elimină o coloană</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Proprietățile proiectului</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Curăță proiectul</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Adaugă un rezumat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Mărește zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Scade zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Focalizare pe conținut</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Potrivește zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Fără zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>utilizând file</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>utilizând ferestre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Mod Selectare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Mod Vizualizare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Mozaic</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Cascadă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Proiectul următor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Proiectul anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished">Adaugă un dreptunghi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished">Adaugă o elipsă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Găsește în panou elementul selectat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Proiect %1 înregistrat în director: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Nu se poate deschide fișierul</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Se pare că fișierul %1 pe care încercați să-l deschideți nu există sau nu mai există.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Deschide proiectul numai pentru citire</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Eroare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Închide aplicația QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Anlează acțiunea precedentă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Refă acțiunea anulată</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Transferă elementele selectate în memoria tampon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Copiază elementele selectate în memoria tampon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Deselectează elementele selectate și selectează-le pe cele neselectate</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Recalculează calea conductorilor, ignorând modificările</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Rotește elementele și textele selectate</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Editează elementul selectat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Rotește textele selectate la un unghi specificat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Creează automat conductor(i)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished">Proiecte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Utilizează crearea automată a conductorilor când este posibil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Revenino la factorul de zoom implicit</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished">Adaugă o linie</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Prezentați diferitele proiecte deschise în ferestre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Prezentați diferitele proiecte deschise în file</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Permite selectarea elementelor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Dispune ferestrele în mozaic</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Dispune ferestrele în cascadă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Activează proiectul următor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Activează proiectul anterior</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Fișier</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Editare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Proiect</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Afișa&re</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Feres&tre</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>Deschise &recent</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Afișează sau nu bara de unelte principală</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Afișează sau nu bara de unelte Vizualizare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Afișează sau nu bara de unelte Schemă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Afișează sau nu panoul de aparate</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Afișează sau nu lista modificărilor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Afișează proiectele</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Unelte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Vizualizare</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Schemă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Adaugă</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Deschide un fișier</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Se pare că fișierul pe care încercați să-l deschideți nu este accesibil pentru citire. Este, în consecință, imposiibil de deschis. Verificați permisiunile asupra fișierului.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Se pare că proiectul pe care încercați să-l deschideți nu este accesibil pentru scriere. Va fi deschis numai pentru citire.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Nu se poate deschide proiectul</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Se pare că fișierul %1 nu este un proiect QElectroTech. În consecință, nu a putut fi deschis.</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7913,7 +8262,7 @@ Opțiuni disponibile: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7923,58 +8272,53 @@ Opțiuni disponibile: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Editare element</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Editare câmp text</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Editare imagine</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Editează obiectele selectate</translation> @@ -8233,42 +8577,42 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Editați informația despre autor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Adaugă o linie</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Adaugă un dreptunghi</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Adaugă o elipsă</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Adaugă un poligon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Adaugă text</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Adaugă un arc de cerc</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Adaugă o bornă</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Anulează</translation> </message> @@ -8279,12 +8623,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished">Afișează</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8294,65 +8638,65 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Refă</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">Elemente QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Avertisment</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Componente</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Adâncime</translation> @@ -8388,31 +8732,31 @@ veuillez patienter durant l'import...</source> <translation>Lipește din...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificat]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation>[doar citire]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Nici o modificare</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Editor de elemente</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n componentă selectată.</numerusform> @@ -8421,35 +8765,35 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Lipsă borne</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Lipsă borne</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br> În lipsa bornei, elementul poate fi conectat la alte elemente prin intermediul conductorilor.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Eroare</b> :<br>Rapoartele folio trebuie să aibă un singur terminal.<br><b>Soluția</b> :<br>Verificați care element nu are o singură bornă</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Verificarea acestui element a generat</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8459,243 +8803,243 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> și </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Erori</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Avertismente</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Fișierul %1 nu există.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Nu se poate deschide fișierul %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Acest fișier nu este un document XML valid</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Eroare</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Editare în mod doar citire</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Nu aveți drepturile necesare pentru modificarea acestui element. Va fi deschis în mod doar citire.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Eroare</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Nu se poate scrie în acest fișier</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Nu se poate salva elementul</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Fișierul nu poate fi deschis</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Se pare că fișierul %1 pe care încercați să-l deschideți nu există sau nu mai există.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Reâncarcă elementul</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Ați făcut modificări pe acest element. Dacă îl reâncărcați, aceste modificări se vor pierde. Sigur doriți să reâncărcați acest element ?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>A eșuat înregistrarea</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>A eșuat înregistrarea, condițiile nu sunt valide</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salvează ca</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Elemente QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Se salvează elementul curent?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Doriți să salvați elementul %1 ?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Deschide un fișier</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Elemente QElectroTech (*.elmt);;Fișiere XML (*.xml);;Toate fișierele (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Element inexistent.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Elementul nu există.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Calea virtuală selectată nu corespunde nici unui element.</translation> @@ -8843,42 +9187,42 @@ condițiile nu sunt valide</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Proiect %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Proiect fără titlu</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [doar citire]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [modificat]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8886,56 +9230,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>A intervenit o eroare în timpul introducerii modelului.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Avertisment</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -8973,139 +9317,138 @@ Que désirez vous faire ?</source> <translation>Pentru a se duplica acest model, introduceți un nume pentru copia sa</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Nou</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Deschide</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Deschide dintr-un fișier</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Salvează</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Salvează ca</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Salvează în fișier</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Termină</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Administrare logo-uri</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Mărește zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Scade zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Potrivește zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Fără zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Salvează ca</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Modele cartuș QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Combină celulele</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>Ta&ie</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>Cop&iază</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>Li&pește</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Editați informațiile suplimentare</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Adaugă un &rând</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Adaugă o &coloană</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>De&sparte celulele</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9124,144 +9467,145 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Fișier</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Editare</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>Afișa&re</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Unelte</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Editare</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Afișare</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Nici o modificare</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Anulări</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Proprietățile celulei</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Modificat]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Doar citire]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Editor modele cartuș</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Eroare</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Deschide un model</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Deschide un fișier</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Modele cartușe QElectroTech (*%1);;Fișiere XML (*.xml);; Toate fișierele (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Salvează modelul ca</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Editați informațiile suplimentare</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Puteți utiliza acest câmp pentru a menționa autorii cartușului, licența acestuia, sau toate celelalte informații pe care le considerați utile.</translation> </message> @@ -9848,18 +10192,18 @@ Que désirez vous faire ?</source> <translation>Proprietățile proiectului</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Selectați o imagine...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9868,7 +10212,7 @@ Que désirez vous faire ?</source> <translation>Eroare</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Nu se poate încărca imaginea.</translation> </message> @@ -10159,24 +10503,24 @@ Que désirez vous faire ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Tip</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">Comentariu</translation> @@ -10184,16 +10528,16 @@ Que désirez vous faire ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10686,7 +11030,7 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -10697,7 +11041,7 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -10770,22 +11114,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -11051,6 +11395,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11095,55 +11444,306 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>o formă</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>o linie</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>un dreptunghi</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>o elipsă</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>o linie multiplă</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12019,177 +12619,234 @@ Les autres champs ne sont pas utilisés.</source> <translation type="unfinished">Formular</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished">Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished">Liniat</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished">Punctat</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished">Puncte și linii</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished">Linii puncte puncte</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished">Tip</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished">Nimic</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished">Orizontal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished">Vertical</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished">Blochează poziția</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation type="unfinished">Poligon închis</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_rs.ts b/lang/qet_rs.ts index e967bec9c..3c36e9d61 100644 --- a/lang/qet_rs.ts +++ b/lang/qet_rs.ts @@ -616,59 +616,59 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -840,6 +840,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1406,13 +1414,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1474,39 +1686,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2035,7 +2247,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2645,89 +2857,94 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished"></translation> </message> @@ -4507,7 +4724,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation type="unfinished"></translation> </message> @@ -4737,6 +4954,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4746,22 +4986,120 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> - <source>Verrouiller la position</source> + <source>Largeur</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6524,117 +6862,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation type="unfinished"></translation> @@ -6723,173 +7061,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6900,31 +7238,31 @@ Options disponibles : <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation type="unfinished"></translation> @@ -6933,916 +7271,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7852,7 +8201,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7862,106 +8211,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> @@ -8256,120 +8600,120 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation type="unfinished"> <numerusform></numerusform> @@ -8378,45 +8722,45 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8426,12 +8770,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8441,248 +8785,248 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished"></translation> </message> @@ -8829,42 +9173,42 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8872,56 +9216,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -8959,127 +9303,126 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9098,156 +9441,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation type="unfinished"></translation> </message> @@ -9282,7 +9626,7 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -9516,7 +9860,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9575,17 +9919,17 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -9792,7 +10136,7 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -10222,22 +10566,22 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10386,24 +10730,24 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished"></translation> @@ -10411,16 +10755,16 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11032,6 +11376,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11076,52 +11425,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation type="unfinished"></translation> </message> @@ -12000,176 +12600,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> - <source>Trait</source> + <source>Géométrie</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> + <source>Trait</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_ru.ts b/lang/qet_ru.ts index 913f45956..43a6ed6bc 100644 --- a/lang/qet_ru.ts +++ b/lang/qet_ru.ts @@ -588,7 +588,7 @@ <translation>Форма</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Статус проекта:</translation> </message> @@ -623,54 +623,54 @@ <translation>до</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Политика обновления</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Проводник</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Новые</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Все</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Отключить</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Элемент</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Существующие</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Лист</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Создаваемые</translation> </message> @@ -851,6 +851,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Размер листа</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1422,13 +1430,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Добавить %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>Изображение</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Выберите изображение...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Ошибка</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Невозможно загрузить изображение.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1479,39 +1691,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Подключить выводы</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Без имени</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Ошибка</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2052,7 +2264,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2664,99 +2876,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Простой</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Элемент </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Имя: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Лист: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Тип: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Подтип: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Позиция: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Вращение: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Размеры: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Выводы: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Расположение: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Закрепить положение</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Найти в панели</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Редактировать элемент</translation> </message> @@ -4564,7 +4781,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Это — шаблон, который может быть применен к листу.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [не используется в проекте]</translation> </message> @@ -4795,6 +5012,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Вертикальный</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4804,23 +5044,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Ширина</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Закрепить положение</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Размер изображения</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Изменить размер изображения</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Предпросмотр</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6596,118 +6934,118 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Этот проект был изменён. Хотите сохранить изменения?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>без_имени</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Проект QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Удалить этот лист?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Проект только для чтения</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Этот проект доступен только для чтения. Поэтому он не может быть очищен.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Удалить неиспользуемые в проекте шаблоны</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Удалить неиспользуемые в проекте элементы</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Удалить пустые категории</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Очистить проект</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Добавить лист</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Перейти в начало проекта</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Перейти в конец проекта</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Этот проект не содержит листов</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Сохранить как</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>нет активных проектов</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align = "center"><b> Открытие текущего проекта...</b><br/> Создание вкладок листов:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Проект</translation> @@ -6797,166 +7135,166 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Настройка QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Загрузка...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Загрузка... Значок в трее</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Выход</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Скрыть</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Показать</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Скрыть редактор схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Показать редактор схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Скрыть редактор элементов</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Показать редактор элементов</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Скрыть редактор штампов</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Показать редактор штампов</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Новый редактор схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Новый редактор элементов</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Закрыть QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Свернуть QElectroTech в трей</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Восстановить QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Редакторы схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Редакторы элементов</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Редакторы штампов</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Обнаружен файл восстановления.<br>Открыть его?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Обнаружены файлы восстановления.<br>Открыть их?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Файл восстановления</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Использование: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6965,7 +7303,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6982,34 +7320,34 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Задаёт каталог с коллекцией элементов </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Задаёт каталог с коллекцией штампов </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Задаёт каталог конфигурации </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Задаёт каталог с языковыми файлами @@ -7019,414 +7357,425 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>История</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Нет изменений</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Выберите действие, чтобы откатить изменения, сделанные в схеме</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Новый</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Открыть</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Закрыть</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Сохранить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Сохранить как</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>&Экспорт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>В этой панели показаны различные изменения на текущем листе. При выборе изменения лист будет возвращён в то состояние, в котором он находился сразу после его применения.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Печать</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Экспорт в PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translatorcomment>подсказка в строке состояния</translatorcomment> <translation>Экспорт одного или нескольких листов текущего проекта</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Выход</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Отмена</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Повторить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Вырезать</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Копировать</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>Вст&авить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Цвет фона белый или серый</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Показывать фон листа белым или серым</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Показать сетку</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Показать или скрыть сетку листа</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Свойства листа</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Добавить лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Удалить этот лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Экспорт в формат CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Управление клеммными колодками (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Экспорт списка имен проводников</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Экспорт внутренней базы данных проекта</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Создать новый проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Открыть существующий проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Закрыть текущий проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Сохранить текущий проект и все его листы</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Сохранить текущий проект с другим именем</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translatorcomment>Добавить ряд</translatorcomment> <translation>Добавить строку</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Удалить строку</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Добавить столбец</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Удалить столбец</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Увеличивает высоту листа</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Уменьшает высоту листа</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Удалить выбранные элементы</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Выделить всё</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Снять выделение</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Инвертировать выделение</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Добавить текстовое поле в текущий лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Добавить изображение в текущий лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Добавить линию в текущий лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Добавить прямоугольник в текущий лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Добавить эллипс в текущий лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Добавить ломаную линию в текущий лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Глубина</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7436,7 +7785,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7446,611 +7795,606 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Дважды щелкните, чтобы завершить форму, щелкните правой кнопкой мыши, чтобы отменить последнюю точку</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Группа</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translatorcomment>содержимое окна сообщения</translatorcomment> <translation>Ошибка при открытии файла %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Удалить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Повернуть</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Выбрать направление текста</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Найти в панели</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Восстановить проводники</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Добавить текстовое поле</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Добавить столбец</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Добавить изображение</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Удалить столбец</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Свойства проекта</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Очистить проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Добавить заключение</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Увеличить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Уменьшить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Масштабировать выбранное</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Подогнать размер</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Восстановить масштаб</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Использовать вкладки</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Использовать окна</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Режим выделения</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Режим просмотра</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Мозаика</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Каскад</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Следующий проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Предыдущий проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Выделяет все элементы на листе</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Снимает выделение со всех элементов листа</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Увеличивает лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Уменьшает лист</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Изменяет масштаб для отображения всего содержимого листа независимо от контекста</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Изменяет масштаб для отображения только части листа</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Добавить прямоугольник</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Добавить эллипс</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Добавить ломаную линию</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Ищет выбранный элемент в панели</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Проект %1 сохранён в каталоге: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Проекты QElectroTech (*.qet);;Файлы XML (*.xml);;Все файлы (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Невозможно открыть файл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Файл %1, который вы пытаетесь открыть, не существует.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Открытие файла в режиме "только чтение"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Активирует проект «%1»</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Ошибка</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Закрывает QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Отменяет последнее действие</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Выполняет отменённое действие</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Копирует выделенные элементы в буфер обмена</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Копирует выделенные элементы</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Инвертирует выделение</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Пересчитывает трассы проводников, игнорируя сделанные пользователем изменения</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Редактировать выбранный элемент</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Поворот выбранных элементов и текстов</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Повернуть выбранный текст на определённый угол</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Автоматическое создание проводников</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Проекты</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Коллекции</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Использовать автоматическое создание проводников, когда это возможно</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Сбрасывает масштаб</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Добавить линию</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Показывает разные открытые проекты в окнах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Показывает разные открытые проекты во вкладках</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Позволяет выбирать элементы</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Разместить окна мозаикой</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Разместить окна каскадом</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Активирует следующий проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Активирует предыдущий проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Файл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Правка</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>П&роект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Вид</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>&Окно</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Недавно открытые</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Отобразить или скрыть главную панель инструментов</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Отобразить или скрыть панель инструментов «Вид»</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Отобразить или скрыть панель инструментов «Схема»</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Отобразить или скрыть панель элементов</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Отобразить или скрыть список изменений</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Показывать проекты</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Инструменты</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Экспортировать текущий лист в другой формат</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Печатать один или более листов текущего проекта</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Вставляет на лист элементы из буфера обмена</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Редактирует свойства листа (размеры, информацию шаблонов, свойства проводников...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Добавить номенклатуру</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Запустить плагин создания клеммной колодки</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Позволяет просматривать листы, не изменяя их</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Сгруппировать выбранные тексты</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Найти/заменить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Вид</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Схема</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Добавить</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Открыть файл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Файл, который вы пытаетесь открыть, недоступен для чтения и не может быть открыт. Проверьте права доступа.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Проект, который вы пытаетесь открыть, недоступен для записи. Он будет открыт в режиме "только для чтения".</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Невозможно открыть проект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Файл %1 не является проектом QElectroTech. Он не может быть открыт.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Редактировать элемент</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Редактировать текстовое поле</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Редактировать изображение</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Редактировать проводник</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Редактировать выбранный объект</translation> @@ -8309,42 +8653,42 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Редактировать информацию об авторе</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Добавить линию</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Добавить прямоугольник</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Добавить эллипс</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Добавить многоугольник</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Добавить текст</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Добавить дугу</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Добавить вывод</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Отмена</translation> </message> @@ -8355,35 +8699,35 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Показывать</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Повторить</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Предупреждение</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Импорт большого файла в формате DXF может занять определённое время, пожалуйста, дождитесь его окончания...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Части</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Глубина</translation> @@ -8399,12 +8743,12 @@ veuillez patienter durant l'import...</source> <translation>Редактировать свойства элемента</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Добавить динамическое текстовое поле</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Сделайте двойной щелчок, чтобы завершить форму, щелкните правой кнопкой мыши, чтобы отменить последнюю точку</translation> </message> @@ -8414,33 +8758,33 @@ veuillez patienter durant l'import...</source> <translation>Вставить из...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translatorcomment>тег заголовка окна</translatorcomment> <translation>[Изменено]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translatorcomment>тег заголовка окна</translatorcomment> <translation> [Только чтение]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Нет изменений</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Редактор элементов</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n выделенная часть.</numerusform> @@ -8449,18 +8793,18 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Отсутствует вывод</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Отсутствует вывод</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translatorcomment>предупреждения</translatorcomment> @@ -8471,196 +8815,196 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Файл %1 не существует.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Невозможно открыть файл %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Этот файл не является правильным XML-документом</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Ошибка</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Версия только для чтения</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>У вас нет прав для редактирования этого элемента. Он будет открыт в режиме "только для чтения".</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Ошибка</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Невозможно записать в этот файл</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Невозможно сохранить элемент</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Невозможно открыть файл</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Похоже, что файл %1, который вы пытаетесь открыть, не существует.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Регистрация не удалась</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Запись не удалась, условия не верны</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">Элементы QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Открыть файл</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>Элементы QElectroTech (*.elmt);;XML-файлы (*.xml);;Все файлы (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Перезагрузить элемент</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Добавить нередактируемый текст элемента в схемы</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Добавить редактируемый текст элемента в схемы</translation> </message> @@ -8680,24 +9024,24 @@ les conditions requises ne sont pas valides</source> <translation>&Вид</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br> При отсутствии выводов элемент не может быть соединен с другими элементами проводником.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Ошибка</b>:<br> Отчеты о листах должны иметь один вывод.<br><b>Решение</b>:<br>Проверьте, чтобы у элемента был только один вывод</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Проверка создаваемого элемента</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8707,75 +9051,75 @@ les conditions requises ne sont pas valides</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> и</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Ошибки</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Предупреждения</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Этот элемент был изменён со времени последнего сохранения. Если вы перезагрузите его, все изменения будут потеряны. Вы действительно хотите перезагрузить элемент?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Сохранить как</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Элементы QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Сохранить текущий элемент?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Вы хотите сохранить элемент %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Несуществующий элемент.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Элемент не существует.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Выбранный виртуальный путь не соответствует элементу.</translation> @@ -8927,43 +9271,43 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translatorcomment>отображаемый заголовок для ProjectView -% 1 - это заголовок проекта, -% 2 - это путь к проекту</translatorcomment> <translation>Проект «%1: %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Проект %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Проект без имени</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [только чтение]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [изменён]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8971,55 +9315,55 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Предупреждение </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Открытие текущего проекта...</b><br/>Создание листов</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Открытие текущего проекта...</b><br/>Настройка перекрестных ссылок</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Во время интеграции шаблона произошла ошибка.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Предупреждение</translation> @@ -9058,139 +9402,138 @@ Que désirez vous faire ?</source> <translation>Чтобы дублировать этот шаблон, пожалуйста, введите имя для его копии</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Новый</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Открыть</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Открыть из файла</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Сохранить</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Сохранить как</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Сохранить в файл</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Выход</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Управление логотипами</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Увеличить</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Уменьшить</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Подогнать размер</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Восстановить масштаб</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Сохранить как</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Шаблоны штампов QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Объединить ячейки</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&Вырезать</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Копировать</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>Вст&авить</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Редактировать дополнительную информацию</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Добавить ст&року</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Добавить с&толбец</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>Раз&делить ячейки</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9209,144 +9552,145 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Файл</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Правка</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Вид</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Инструменты</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Правка</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Вид</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Нет изменений</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>История</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Свойства ячейки</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Изменено]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Только чтение]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech — Редактор штампов</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 — %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Ошибка</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Открыть шаблон штампа</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Открыть файл</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Шаблоны штампов QElectroTech (*%1);;Файлы XML (*.xml);; Все файлы (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Сохранить шаблон как</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Изменить дополнительную информацию</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Вы можете использовать это поле, чтобы указать авторов этого шаблона, его лицензию или любую другую информацию, которую сочтете полезной.</translation> </message> @@ -9939,18 +10283,18 @@ Que désirez vous faire ?</source> <translation>Свойства проекта</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Выберите изображение...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Файлы изображений (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9959,7 +10303,7 @@ Que désirez vous faire ?</source> <translation>Ошибка</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Невозможно загрузить изображение.</translation> </message> @@ -10396,24 +10740,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Тип</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Аннотация</translation> @@ -10421,16 +10765,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10727,22 +11071,22 @@ Voulez-vous la remplacer ?</source> <translation>Создание проводников</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Чтобы установить плагин qet_tb_generator<br>Посетите:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Требуется python 3.5 или выше.<br><B><U>Первая установка в Windows</B></U><br>1. При необходимости установите python 3.5 или более позднюю версию<br>Посетите:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U>Обновление в Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>пользователь может запустить в терминале этот сценарий в этом каталоге<br>C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Чтобы установить плагин qet_tb_generator<br>Посетите:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Требуется Python 3.5 или выше.<br><br><B><U>Первая установка в Linux</B></U><br>1. Проверьте, что у вас установлен pip3: pip3 --version<br> Если не установлено, то: sudo apt-get install python3-pip<br>2. Установите программу: sudo pip3 install qet_tb_generator<br>3. Запустите программу: qet_tb_generator<br><br><B><U>Обновление в Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Ошибка при запуске плагина qet_tb_generator</translation> </message> @@ -10770,7 +11114,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>это ошибка в коде</translation> @@ -11000,7 +11344,7 @@ Voulez-vous la remplacer ?</source> <translation>Открыть элемент</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Импортировать файл в формате DXF</translation> </message> @@ -11144,6 +11488,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11190,55 +11539,306 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>фигура</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>линия</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Добавить точку</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Удалить эту точку</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Размер</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Добавить точку к многоугольнику</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Удалить точку из многоугольника</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Изменить %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>прямоугольник</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>эллипс</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>ломаная линия</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12153,150 +12753,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>Форма</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Линия</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Толщина</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Обычный</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Пунктир</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Точками</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Точки и тире</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Тире-точка-точка</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Пользовательское тире</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Тип</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Цвет</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Заливка</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Стиль</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Нет</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Ширина</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Сплошной</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Плотность 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Плотность 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Плотность 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Плотность 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Плотность 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Плотность 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Плотность 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Горизонтальный</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Вертикальный</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Крест</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Диагональ обратная</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Диагональ прямая</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Крест диагональный</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Закрепить положение</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Замкнутый многоугольник</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12305,30 +12932,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Изменить линию фигуры</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Изменить заливку фигуры</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Замкнуть многоугольник</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Изменить простую фигуру</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Изменить свойства простой фигуры</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> diff --git a/lang/qet_sk.ts b/lang/qet_sk.ts index 2b4ffde77..1dfc67e65 100644 --- a/lang/qet_sk.ts +++ b/lang/qet_sk.ts @@ -616,59 +616,59 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -840,6 +840,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1406,13 +1414,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1463,39 +1675,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2035,7 +2247,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2645,89 +2857,94 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished"></translation> </message> @@ -4507,7 +4724,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation type="unfinished"></translation> </message> @@ -4737,6 +4954,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4746,22 +4986,120 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> - <source>Verrouiller la position</source> + <source>Largeur</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6524,117 +6862,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation type="unfinished"></translation> @@ -6723,173 +7061,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6900,31 +7238,31 @@ Options disponibles : <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation type="unfinished"></translation> @@ -6933,916 +7271,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7852,7 +8201,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7862,106 +8211,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> @@ -8210,17 +8554,17 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> @@ -8246,73 +8590,73 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> @@ -8338,31 +8682,31 @@ veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation type="unfinished"> <numerusform></numerusform> @@ -8371,35 +8715,35 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8409,12 +8753,12 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8424,23 +8768,23 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> @@ -8452,236 +8796,236 @@ veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> @@ -8829,42 +9173,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8872,56 +9216,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -8959,127 +9303,126 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9098,156 +9441,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation type="unfinished"></translation> </message> @@ -9374,7 +9718,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9453,17 +9797,17 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -9933,22 +10277,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10052,24 +10396,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished"></translation> @@ -10077,16 +10421,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10658,7 +11002,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -10888,7 +11232,7 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -11032,6 +11376,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11076,52 +11425,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation type="unfinished"></translation> </message> @@ -12000,176 +12600,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> - <source>Trait</source> + <source>Géométrie</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> + <source>Trait</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_sl.ts b/lang/qet_sl.ts index ef43f52f0..a0bc19903 100644 --- a/lang/qet_sl.ts +++ b/lang/qet_sl.ts @@ -616,59 +616,59 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -840,6 +840,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1406,13 +1414,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1474,39 +1686,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2035,7 +2247,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2645,89 +2857,94 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished"></translation> </message> @@ -4509,7 +4726,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation type="unfinished"></translation> </message> @@ -4739,6 +4956,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4748,22 +4988,120 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> - <source>Verrouiller la position</source> + <source>Largeur</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6528,117 +6866,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation type="unfinished"></translation> @@ -6727,173 +7065,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6904,31 +7242,31 @@ Options disponibles : <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation type="unfinished"></translation> @@ -6937,916 +7275,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7857,7 +8206,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7868,106 +8217,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> @@ -8262,120 +8606,120 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation type="unfinished"> <numerusform></numerusform> @@ -8385,45 +8729,45 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8434,12 +8778,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8450,247 +8794,247 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> @@ -8838,42 +9182,42 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8881,56 +9225,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -8968,127 +9312,126 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9107,156 +9450,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation type="unfinished"></translation> </message> @@ -9323,7 +9667,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9347,7 +9691,7 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -9396,17 +9740,17 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -9579,7 +9923,7 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -10022,22 +10366,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10186,24 +10530,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished"></translation> @@ -10211,16 +10555,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11052,6 +11396,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11096,52 +11445,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation type="unfinished"></translation> </message> @@ -12020,176 +12620,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> - <source>Trait</source> + <source>Géométrie</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> + <source>Trait</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_sr.ts b/lang/qet_sr.ts index 242c2f794..fa2c4f559 100644 --- a/lang/qet_sr.ts +++ b/lang/qet_sr.ts @@ -616,59 +616,59 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation type="unfinished"></translation> </message> @@ -840,6 +840,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1406,13 +1414,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1474,39 +1686,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2035,7 +2247,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2645,89 +2857,94 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation type="unfinished"></translation> </message> @@ -4507,7 +4724,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation type="unfinished"></translation> </message> @@ -4737,6 +4954,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4746,22 +4986,120 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> - <source>Verrouiller la position</source> + <source>Largeur</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> <translation type="unfinished"></translation> </message> </context> @@ -6524,117 +6862,117 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation type="unfinished"></translation> @@ -6723,173 +7061,173 @@ Voulez-vous enregistrer les modifications ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6900,31 +7238,31 @@ Options disponibles : <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation type="unfinished"></translation> @@ -6933,916 +7271,927 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7852,7 +8201,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7862,106 +8211,101 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> @@ -8256,120 +8600,120 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation type="unfinished"> <numerusform></numerusform> @@ -8378,45 +8722,45 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation type="unfinished"> @@ -8426,12 +8770,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation type="unfinished"></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation type="unfinished"> @@ -8441,247 +8785,247 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished"></translation> @@ -8829,42 +9173,42 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8872,56 +9216,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation type="unfinished"></translation> </message> @@ -8959,127 +9303,126 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9098,156 +9441,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation type="unfinished"></translation> </message> @@ -9314,7 +9658,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9338,7 +9682,7 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished"></translation> @@ -9387,17 +9731,17 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> @@ -9570,7 +9914,7 @@ Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished"></translation> </message> @@ -10004,22 +10348,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished"></translation> </message> @@ -10168,24 +10512,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished"></translation> @@ -10193,16 +10537,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11032,6 +11376,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11076,52 +11425,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation type="unfinished"></translation> </message> @@ -12000,176 +12600,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> - <source>Trait</source> + <source>Géométrie</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> + <source>Trait</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_sv.ts b/lang/qet_sv.ts index 917c6d79e..32eacedba 100644 --- a/lang/qet_sv.ts +++ b/lang/qet_sv.ts @@ -616,59 +616,59 @@ <translation>Till</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Projektstatus:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Uppdateringspolicy</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Förbindning:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Alla</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Endast nya</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Endast befintliga</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Avaktiverad</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Symboler:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Blad:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Befintliga</translation> </message> @@ -847,6 +847,14 @@ Notera: Dessa alternativ TILLÅTER ELLER BLOCKERAR INTE auto-numreringen, endast <translation>Kolumner:</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Notera: Dessa alternativ TILLÅTER ELLER BLOCKERAR INTE auto-numreringen, endast <translation>Lägg till %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>en bild</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Välj en bild...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Fel</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Det går inte att ladda bilden.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1481,39 +1693,39 @@ Notera: Dessa alternativ TILLÅTER ELLER BLOCKERAR INTE auto-numreringen, endast <translation>Ändra egenskaper för en förbindning</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Anslut de markerade plintarna</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Namnlöst</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Fel</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Notera: Dessa alternativ TILLÅTER ELLER BLOCKERAR INTE auto-numreringen, endast <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,99 +2864,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Allmänt</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Symboler </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Namn: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Blad: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Typ: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Undertyp: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Position: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Rotation: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Storlek: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Anslutningar: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Plats: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">Lås position</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Hitta i panelen</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Redigera symbol</translation> </message> @@ -4545,7 +4762,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Detta är en titelblockmall som kan användas på ett blad.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [används inte i projektet]</translation> </message> @@ -4776,6 +4993,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Vertikal</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4785,23 +5025,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Höjd</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Lås position</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Storlek på bild</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Ändra storlek på en bild</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Översikt</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6573,118 +6911,118 @@ Följande variabler är inkompatibla: <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Projektet har ändrats. Vill du spara ändringarna?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Spara som</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>namnlös</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>QElectroTech-projekt (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>inga aktiva projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Ta bort blad?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Skrivskyddat projekt</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Detta projekt är skrivskyddat. Det är därför inte möjligt att städa upp det.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Ta bort oanvända titelblock från projektet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Ta bort oanvända symboler från projektet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Ta bort tomma kataloger</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Städa upp projektet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Lägg till blad</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Gå till första bladet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Gå till sista bladet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Projektet innehåller inga blad</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Öppnar det aktuella projektet...</b><br/>Skapar bladflikar:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Projekt</translation> @@ -6773,166 +7111,166 @@ Vill du spara ändringarna?</translation> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Konfigurera QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Laddar...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Laddar... Ikoner för systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Avsluta</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Dölj</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Återställ</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Dölj alla schemaredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Återställ alla schemaredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Dölj alla symbolredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Återställ alla symbolredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Dölj alla titelblockredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Återställ alla titelblockredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Ny schemaredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Ny symbolredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Stäng programmet QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Stäng QElectroTech till systray</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Återställ QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Schemaredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Symbolredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Titelblockredigerare</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Följande återställningsfil har hittats,<br>vill du öppna den?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Följande återställningsfiler har hittats,<br>vill du öppna dem?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Återställningsfil</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Användning: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6941,7 +7279,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6958,34 +7296,34 @@ Tillgängliga alternativ : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Ange mappen för symbolbibliotek </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Ange mappen för titelblockbibliotek </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Ange konfigurationsmappen </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR Definiera datamapp</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Ange mappen som innehåller språkfilerna @@ -6995,916 +7333,927 @@ Tillgängliga alternativ : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Symbolbibliotek</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Inga ändringar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Klicka på en åtgärd för att gå bakåt i redigeringen av schemat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>Denna panel listar de olika åtgärder som utförts på det aktuella bladet. Om du klickar på en åtgärd återgår du till schemats status precis efter att åtgärden utfördes.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Ändringar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&xportera</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Exporterar det aktuella bladet till ett annat format</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Skriv ut</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Skriver ut ett eller flera blad från det aktuella projektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Exportera som pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Exporterar ett eller flera blad från det aktuella projektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Avsluta</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Stäng programmet QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Ångra</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Ångrar föregående åtgärd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Gör om</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Återställer ångrad åtgärd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Klipp ut</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>K&opiera</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>K&listra in</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Överför markerade objekt till urklipp</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Kopierar markerade objekt till urklipp</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Placera urklippsobjekt på blad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Återställ förbindningar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Återställ förbindningar utan att ta hänsyn till ändringar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Skapa förbindningar automatiskt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Använd automatiskt skapande av förbindningar där det är möjligt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Bakgrundsfärg vit/grå</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Visar bladets bakgrundsfärg i vitt eller grått</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Visa rutnät</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Visar eller döljer rutnät på blad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Bladegenskaper</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Redigera bladegenskaper (mått, titelblock-information, förbindningsegenskaper etc.)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Projektegenskaper</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Lägg till ett blad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Ta bort blad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Städa upp projektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Exportera i CSV-format</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Lägg till en förteckning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Lägg till en innehållsförteckning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Plintradshanterare (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Starta plugin för skapande av plintrader</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Exportera lista med ledarnamn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Exportera den interna projektdatabasen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Användning av flikar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Visar de olika projekt som är öppna som flikar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Användning av fönster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Visar de olika projekt som är öppna i underfönster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Sida vid sida</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Arrangera fönster sida vid sida</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Överlappande</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Arrangera fönster överlappande</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Markeringsläge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Används för att markera objekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Visningsläge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Gör det möjligt att visa bladet utan att ändra i det</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Nästa projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Aktivera följande projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Föregående projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Aktiverar föregående projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Nytt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Öppna</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Spara</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Spara som</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>S&täng</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Skapar ett nytt projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Öppnar ett befintligt projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Stänger det aktuella projektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Sparar det aktuella projektet och alla dess blad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Sparar det aktuella projektet med ett annat filnamn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Lägg till kolumn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Ta bort kolumn</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Lägg till rad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Ta bort rad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Lägger till en kolumn på bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Tar bort en kolumn på bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Ökar bladets höjd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Minskar bladets höjd</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Ta bort</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Rotera</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Textrotering</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Hitta i panelen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Redigera det markerade objektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Gruppera markerade textetiketter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Tar bort markerade objekt från bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Roterar markerade objekt och texter</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Roterar markerade texter till en exakt vinkel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Visar den valda symbolen i panelen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Markera allt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Avmarkera allt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Invertera markering</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Markerar alla objekt på bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Avmarkerar alla objekt på bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Avmarkerar markerade objekt och markerar omarkerade objekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Zooma in</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Zooma ut</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Zooma innehåll</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Zooma anpassad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Återställ zoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Förstora bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Förminska bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Anpassar zoomen för att visa hela innehållet i bladet, utan ram</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Anpassar zoomen exakt till bladets ram</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Återställer standardzoom</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Lägg till ett textfält</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Lägg till en bild</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Lägg till en linje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Lägg till en rektangel</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Lägg till en ellips</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Lägg till en polygon</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>Lägg till en plintrad</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Lägger till ett textfält till det aktuella bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Lägger till en bild till det aktuella bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Lägger till en linje till det aktuella bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Lägger till en bild till det aktuella bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Lägger till en ellips till det aktuella bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Lägger till en polygontill det aktuella bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>Lägger till en plintrad till det aktuella bladet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Sök/ersätt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Verktyg</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Visning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Schema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Lägg till</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Djup</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Fil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Redigera</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Visning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Fön&ster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Nyligen öppnat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Huruvida huvudverktygsfältet ska visas eller inte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Huruvida verktygsfältet Visning ska visas eller inte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Huruvida verktygsfältet Schema ska visas eller inte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Huruvida symbolpanelen ska visas eller inte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Huruvida listan över ändringar ska visas eller inte</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Visning av projekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Projekt %1 sparat i katalog: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Öppna en fil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech-projekt (*.qet);;XML-filer (*.xml);;Alla filer (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Det går inte att öppna filen</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Det verkar som om filen %1 du försöker öppna inte finns eller inte längre finns.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Det verkar som om filen du försöker öppna inte är läsbar. Det är därför omöjligt att öppna den. Kontrollera filens behörigheter.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Öppna projektet i skrivskyddat läge</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Det verkar som om projektet du försöker öppna inte är skrivbart. Det kommer därför att öppnas som skrivskyddat.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Det går inte att öppna projektet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Det verkar som om filen "%1" inte är en QElectroTech-projektfil. Den kan inte öppnas.</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7913,7 +8262,7 @@ Tillgängliga alternativ : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7922,106 +8271,101 @@ Tillgängliga alternativ : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Dubbelklicka för att avsluta polygonen, högerklicka för att ångra den sista punkten</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Grupp</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Redigera symbol</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Redigera textfält</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Redigera bild</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Redigera förbindning</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Redigera markerat objekt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Ett fel uppstod när filen "%1" öppnades.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Aktiverar projektet "%1"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fel</translation> @@ -8316,120 +8660,120 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Visa</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Filen %1 finns inte.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Det går inte att öppna filen %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Filen är inte ett giltigt XML-dokument</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Fel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Skrivskyddad redigering</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Du har inte de nödvändiga behörigheterna för att ändra denna symbol. Den kommer därför öppnas i skrivskyddat läge.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Fel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Det går inte att skriva till denna fil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Symbolen finns inte.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Den valda virtuella sökvägen matchar inte en symbol.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Symbolen finns inte.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Det går inte att spara symbolen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Öppna en fil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech-symboler (*.elmt);;XML-filer (*.xml);;Alla filer (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Ändrad]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Skrivskyddad]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>För många grafikbojekt, listan genererades inte: %1</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n markerad del.</numerusform> @@ -8437,45 +8781,45 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Anslutning saknas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Utan anslutning kan symbolen inte anslutas till andra symboler via förbindningar.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Anslutning saknas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Fel</b> :<br>Bladhänvisningar får bara ha en anslutning.<br><b>Lösning</b> :<br>Kontrollera att symbolen endast har en anslutning</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Kontroll av denna symbol genererad</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8484,12 +8828,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> och</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8498,248 +8842,248 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Fel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Varningar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Det går inte att öppna filen</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Det verkar som om filen %1 du försöker öppna inte finns eller inte längre finns.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Spara den aktuella symbolen?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Vill du registrera symbolen %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Ångra</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Gör om</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>Importera en symbol som ska storleksanpassas</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>QElectroTech-symbol (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Djup</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Lägg till en linje</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Lägg till en rektangel</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Lägg till en ellips</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Lägg till en polygon</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Lägg till en text</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Lägg till en båge</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Lägg till en anslutning</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Lägg till ett dynamiskt textfält</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Dubbelklicka för att avsluta polygonen, högerklicka för att ångra den sista punkten</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Lägg till symboltext som inte är redigerbar i scheman</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Lägg till symboltext som är redigerbar i scheman</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Delar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Inga ändringar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Symbolredigerare</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Registrering misslyckades</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Registreringen misslyckades, villkoren är ogiltiga</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Spara som</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech-symboler (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Ladda om symbol</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Du har gjort ändringar i denna symbol. Om du laddar om den kommer dessa ändringar att gå förlorade. Vill du verkligen ladda om symbolen?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Varning</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Att importera en stor DXF-filkan ta lite tid, @@ -8888,42 +9232,42 @@ ha tålamod under importeringen...</translation> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Projekt « %1 : %2 »</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Projekt %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Namnlöst projekt</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [skrivskyddad]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [modifierad]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8931,19 +9275,19 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Ett fel uppstod under modellintegreringen.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Varning</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8952,7 +9296,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> Du använder för närvarande QElectroTech version %2</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8961,32 +9305,32 @@ Que désirez vous faire ?</source> Vad vill du göra?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Varning</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>Projektet du försöker öppna är delvis kompatibelt med din version %1 av QElectroTech. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>För att göra det helt kompatibelt, öppna samma projekt med QElectroTech version 0.8 eller 0.80, spara projektet och öppna det igen med denna version. Vad vill du göra?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Öppnar det aktuella projektet...</b><br/>Skapar blad</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Öppnar det aktuella projektet...</b><br/>Skapar korsreferenser</p></translation> </message> @@ -9024,127 +9368,126 @@ Vad vill du göra?</translation> <translation>För att duplicera denna mall, ange önskat namn för kopian</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Ny</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Öppna</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Öppna från en fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Spara</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Spara som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Spara till fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Avsluta</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&Klipp ut</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>K&opiera</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>K&listra in</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Hantering av logotyper</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Redigera komplementerande information</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Zooma in</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Zooma ut</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Zooma anpassad</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Återställ zoom</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Lägg till en &rad</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Lägg till en &kolumn</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Sammanfoga celler</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>S&eparera celler</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9163,156 +9506,157 @@ Vad vill du göra?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Redigera</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Visning</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Verktyg</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Redigera</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Visning</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Inga ändringar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Ändringar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Cellegenskaper</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Ändrad]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Skrivskyddad]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Redigerare för titelblockmall</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Fel</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Öppna en titelblockmall</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Öppna en fil</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech titelblockmallar (*%1);;XML-filer (*.xml);; Alla filer (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Spara mall som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Spara som</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech titelblockmallar (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Redigera komplementerande information</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Du kan använda detta fria fält för att nämna upphovsmännen till titelblockmallen, dess licens eller annan information som du anser vara användbar.</translation> </message> @@ -9351,7 +9695,7 @@ Vad vill du göra?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>det här är ett fel i koden</translation> @@ -9585,7 +9929,7 @@ Vad vill du göra?</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9646,17 +9990,17 @@ Vad vill du göra?</translation> <translation>Ändra storlek på blad</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Välj en bild...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Bildfiler (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Det går inte att ladda bilden.</translation> </message> @@ -9845,7 +10189,7 @@ Vad vill du göra?</translation> <translation>Text</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Importera en DXF-fil</translation> </message> @@ -10209,22 +10553,22 @@ Vill du ersätta den?</translation> <translation type="unfinished">Djup</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Så här installerar du insticksprogrammet qet_tb_generator:<br>Besök:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Kräver Python 3.5 eller högre.<br><B><U> Första installation på Windows</B></U><br>1. Installera, om nödvändigt, Python 3.5 eller högre<br>Besök:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U>Uppdatera på Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>användare kan köra detta script i denna mapp<br>C:\users\<användare>\AppData\Local\Programs\Python\Python36-32\Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>Så här installerar du insticksprogrammet qet_tb_generator:<br>Besök:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U>Första installation på macOSX</B></U><br>1. Installera, om nödvändigt, paketet python 3.11, <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 Kör skriptet Profile.command<br> eftersom programmet använder hårdkodad PATH för att lokalisera pluginprogrammet qet-tb-generator<br>Besök:<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>howto</a><br>2. pip3 install qet_tb_generator<br><B><U>Uppdatera på macOSX</B></U><br> pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Så här installerar du insticksprogrammet qet_tb_generator:<br>Besök:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Kräver Python 3.5 eller högre.<br><br><B><U>Första installation på Linux</B></U><br>1. Kontrollera att du har pip3 installerat: pip3 --version<br>Om inte, installera med: sudo apt-get install python3-pip<br>2. Installera programmet: sudo pip3 install qet_tb_generator<br>3. Kör programmet: qet_tb_generator<br><br><B><U>Uppdatera på Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Fel vid start av plugin qet_tb_generator</translation> </message> @@ -10373,24 +10717,24 @@ Vill du ersätta den?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Kommentar</translation> @@ -10398,16 +10742,16 @@ Vill du ersätta den?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11097,6 +11441,11 @@ Ladda ner den genom att följa länken nedan och packa upp den i installationsma <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11143,52 +11492,303 @@ Lägg till en ny tabell eller justera den befintliga tabellen för att visa all <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Lägg till punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Ta bort punkt</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Storlek</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Lägg till en punkt på en polygon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Ta bort en punkt från en polygon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Ändra %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>en linje</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>en rektangel</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>en ellips</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>en polygon</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>en grafisk form</translation> </message> @@ -12122,176 +12722,233 @@ De andra fälten används inte.</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Höjd</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Linje</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Typ:</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Tjocklek:</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Färg:</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Streckad</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Punktad</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Streckad och punktad</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Streck punkt punkt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Anpassad</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Fyllning</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Ingen</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Solid</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Densitet 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Densitet 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Densitet 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Densitet 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Densitet 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Densitet 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Densitet 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Horisontell</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Vertikal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Kors</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Diagonal bakåt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Diagonal framåt</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Diagonal kors</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Stil:</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Lås position</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Sluten polygon</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Ändra linje för en geometrisk form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Ändra fyllning för en geometrisk form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Stäng polygon</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Ändra en enkel form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Ändra egenskaperna för en enkel form</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_tr.ts b/lang/qet_tr.ts index e1dd5a185..6699ac7ef 100644 --- a/lang/qet_tr.ts +++ b/lang/qet_tr.ts @@ -617,60 +617,60 @@ <translation>Bitiş</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Proje Durumu:</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Güncelleme Kuralları</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>İletken</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Hepsi</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Sadece Yeni</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Sadece Var Olan</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Devre Dışı</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translatorcomment>I am not sure about this It should be checked</translatorcomment> <translation>Element</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Sayfa</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Var Olan</translation> </message> @@ -850,6 +850,14 @@ Not: Bu durum "Otomatik Numaralandırma"'ya engel koymaz veya izi <translation>Sütunlar :</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1418,14 +1426,218 @@ Not: Bu durum "Otomatik Numaralandırma"'ya engel koymaz veya izi <translation>%1 ekle</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translatorcomment>I am not sure about this. It should be checked.</translatorcomment> <translation>Bir görüntü</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Bir resim seç...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Hata</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Resim yüklenemiyor.</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1478,40 +1690,40 @@ Not: Bu durum "Otomatik Numaralandırma"'ya engel koymaz veya izi <translation type="unfinished">Şablon oluştur</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation type="unfinished">X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Seçilen bağlantıları bağla</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Başlıksız</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished">Şablon kaydedildi</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished">Şablon başarıyla şu adla kaydedildi: %1</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Hata</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished">Dosya yazılamadı.</translation> </message> @@ -2055,7 +2267,7 @@ Not: Bu durum "Otomatik Numaralandırma"'ya engel koymaz veya izi <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2668,102 +2880,107 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Genel</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Öğe </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>İsim : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Sayfa : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation type="unfinished">Type : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation type="unfinished">Alt tip : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Pozisyon : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Döndürme : %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Boyutlar : %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Sınırlar : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished">Tanımlı maksimum slave kontak sayısı : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished">Kullanılan slave kontak sayısı : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Yerleştir : %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translatorcomment>I am not sure about this. It should be checked.</translatorcomment> <translation>Panelde bul</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Öğeyi düzenle</translation> </message> @@ -4567,7 +4784,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Bu, bir sayfaya uygulanabilecek bir antet şablonudur.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [Projede kullanılmıyor]</translation> </message> @@ -4798,6 +5015,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Dikey</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4807,23 +5047,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">Genişlik</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">Yükseklik</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Pozisyonu Kilitle</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Görüntünün Boyutu</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Görüntünün boyutunu değiştir</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Önizleme</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6600,118 +6938,118 @@ Aşağıdaki değişkenler uyumsuz : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Proje değiştirildi. Değişiklikleri kaydetmek ister misiniz ?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Farklı kaydet</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation type="unfinished">isimsiz</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>QElectroTech Projesi (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>hiçbir proje yayınlanmadı</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Sayfa silinsin mi ?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Salt okunur proje</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Bu proje salt okunur. Temizlemek mümkün değildir.</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Projede kullanılmayan şablonları sil</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Projede kullanılmayan öğeleri sil</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Boş kategorileri sil</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Projeyi temizle</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Sayfa ekle</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation type="unfinished">Projenin başına dön</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation type="unfinished">Projenin sonuna git</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished">bir sayfa sola git</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished">bir sayfa sağa git</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Bu proje herhangi bir sayfa içermiyor</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>Projenin açılışı devam ediyor ....</b><br/>Sayfa sekmeleri oluşturuluyor :</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Proje</translation> @@ -6800,166 +7138,166 @@ Değişiklikleri kaydetmek ister misiniz ?</translation> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>QElectroTech'i yapılandır</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Yükleniyor...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Yükleniyor ... systray icon</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Çıkış</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Gizle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Geri Yükle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>Tüm şema düzenleyicilerini &gizle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>Tüm şema düzenleyicilerini &geri yükle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>Tüm öğe düzenleyicilerini &gizle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>Tüm öğe düzenleyicilerini &geri yükle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>Tüm Antet düzenleyicileri &gizle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Tüm Antet düzenlemelerini geri yükle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Yeni şema düzenleyici</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Yeni öğe editörü</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>QElectroTech uygulamasını kapatır</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Systray'da QElectroTech'i azaltın</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>QElectroTech'i geri yükle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Şema Editörleri</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Öğe Editörleri</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Anteti Düzenle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Aşağıdaki geri yükleme dosyası bulundu,<br>Açmak ister misiniz ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Aşağıdaki geri yükleme dosyaları bulundu,<br>Açmak ister misiniz ?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Dosyayı geri yükle</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Kullanım : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6968,7 +7306,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6985,35 +7323,35 @@ Mevcut seçenekler: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Öğelerin kütüphanesinin klasörünü tanımla </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Antet şablonu kütüphanesinin klasörünü tanımlayın </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Yapılandırma klasörünü ayarla </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"> --data-dir=DIR Veri klasörünü tanımla </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Dil dosyalarını içeren klasörü ayarlayın @@ -7023,917 +7361,928 @@ Mevcut seçenekler: <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Projeler</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Kolleksiyonlar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Değişiklik yok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Şema üzerinde çalışmak için bir işleme tıklayın</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translatorcomment>I am not sure about this. It should be checked.</translatorcomment> <translation>Bu panel, geçerli sayfada gerçekleştirilen farklı eylemleri listeler. Bir eylemi tıklamak, şemanın uygulamadan sonraki haline dönmesini sağlar.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>İptal edilenler</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>D&ışa aktar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Mevcut sayfayı başka bir formatta dışa aktarır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Yazdır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Mevcut projeden bir veya daha fazla sayfa yazdır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Çıkış</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>QElectroTech uygulamasını kapatır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>İptal</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Önceki eylemi iptal eder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Yeniden yapma</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>İptal edilen eylemi geri yükle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>Ke&s</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>Kop&yala</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>Y&apıştır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Seçili öğeleri panoya aktar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Seçilen öğeleri panoya kopyala</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Panodaki öğeleri sayfaya yerleştirin</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>İletkenleri sıfırla</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Modifikasyonları dikkate almadan iletken yollarını yeniden hesaplar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Otomatik iletken (ler) oluşturma</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Mümkün olduğunda otomatik oluşturulan iletken(ler) kullanın</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Beyaz / gri arka plan rengi</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Sayfa'nın arka plan rengini beyaz veya gri olarak görüntüler</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Izgarayı göster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>Sayfaların ızgarasını göster veya gizle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Sayfa Özelikkleri</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Sayfa özelliklerini düzenleyin (boyutlar, antet bilgileri, iletken özellikleri ...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Proje Özellikleri</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Bir Sayfa Ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Sayfayı sil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Projeyi temizle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Bir özet ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation type="unfinished">Bir nomenklatür ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Terminal bloğu yaratma eklentisini başlatın</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Seçilen metinleri gruplandır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Bul / Değiştir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Sekmeleri kullan</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation type="unfinished">PDF olarak export et</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation type="unfinished">Geçerli projeden bir veya daha fazla sayfa export et</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation type="unfinished">CSV formatında export et</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation type="unfinished">Klemens yöneticisi (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation type="unfinished">İletken adları listesini export et</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished">Kablolama planını export et</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished">Klemenslerin otomatik numaralandırılması</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation type="unfinished">Projenin dahili veritabanını export et</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Farklı projeleri açık sekmelerde sunar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Pencereleri kullan</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Farklı projeleri alt alta açılan pencerelerde sunar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Yan yana</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Döşenmiş pencereleri düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Basamak</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Basamaklı pencereleri düzenleme</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Seçim Modu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Öğeleri seçmeye izin ver</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Görüntüleme modu</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Sayfayı değiştirmeden görüntüleyebilirsiniz</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Sonraki proje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Bir sonraki projeyi aktifleştir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Önceki proje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Önceki projeyi aktifleştir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Yeni</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Aç</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Kaydet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Farklı kaydet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Kapat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Yeni bir proje oluştur</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Mevcut bir projeyi aç</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Mevcut projeyi kapat</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Mevcut projeyi ve tüm sayfaları kaydeder</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Mevcut projeyi başka bir dosya adıyla kaydet</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Bir Sütun ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Bir sütunu kaldır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Bir çizgi ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Bir çizgi kaldır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Sayfaya bir sutun ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Sayfadan bir sutun kaldır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Sayfa yüksekliğini büyütür</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Sayfayı Küçült</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Sil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Döndür</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Metni düzelt</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Panelde bul</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Seçilen öğeyi düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Seçilen öğeleri sayfadan kaldırır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Seçili öğeleri ve metinleri döndür</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Seçilen metinleri hassas bir açıyla döndürün</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Panelde seçilen öğeyi bul</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Tümünü seç</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Hiçbirini seçme</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Seçimi ters çevir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Sayfadaki tüm unsurları seç</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Sayfadaki tüm öğelerin seçimini kaldırın</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>Seçili öğelerin seçimini kaldırın ve seçilmemiş öğeleri seçin</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Yakınlaştır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Uzaklaştır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>İçeriğe odaklan</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Uyarlanmış yakınlaştırma</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Yakınlaştırma yok</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Sayfayı görüntüle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Sayfayı Küçült</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Çerçevenin tüm içeriğini çerçeveden bağımsız olarak gösterecek şekilde yakınlaştırır</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Yakınlaştırmayı tam olarak sayfa çerçevesine uyarlar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Varsayılan yakınlaştırmayı geri yükle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Bir metin alanı ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Bir resim ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Bir çizgi ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Bir dikdörtgen ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Bir elips ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Bir çokgen ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished">Klemens planı ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Geçerli sayfaya metin alanı ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Geçerli sayfaya resim ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Geçerli sayfaya çizgi ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Geçerli sayfaya dikdörtgen ekler</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Geçerli sayfaya elips ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Geçerli sayfaya devamlı çizgi ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished">Geçerli sayfaya bir klemens planı ekler</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Araçlar</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Görünüm</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Şema</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Ekle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Derinlik</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Dosya</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>&Proje</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>Gö&rünüm</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>Pe&ncere</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Son Açılan</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Ana araç çubuğunu göster veya göster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Görünüm araç çubuğunu göster veya göster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Şema araç çubuğunu göster veya göster</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Cihazların paneli görüntülensin veya görüntülenmesin</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Değişiklikler listesi görüntüleniyor veya görüntülenmiyor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Projeleri görüntüle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>%1 projesi şu dizine kaydedildi : %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Bir dosya aç</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech Projeleri (*.qet);;XML Dosyaları (*.xml);;Tüm Dosyalar (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Dosya açılamadı</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Açmaya çalıştığınız %1 dosyası mevcut değil gibi görünüyor.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Açmaya çalıştığınız dosya okunabilir değil gibi görünüyor. Dosya açılamıyor. Lütfen dosyanın izinlerini kontrol edin.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Projeyi salt okunur açma</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Açmaya çalıştığınız proje yazılabilir değil gibi görünüyor. Salt okunur modda açılacaktır.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Proje açılamadı</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>%1 dosyasının bir QElectroTech proje dosyası olmadığı anlaşılıyor. Bu açılamaz.</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7941,7 +8290,7 @@ Mevcut seçenekler: </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7949,107 +8298,102 @@ Mevcut seçenekler: </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Şekli bitirmek için çift tıkla, sağ tık ile son noktayı iptal et</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished">Klemens silinemiyor</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished">Seçim, köprülenmiş ve/veya çok seviyeli bir klemense ait olan bir veya daha fazla klemens içerdiğinden silme yapılamıyor. Silmek için ilgili klemenslerin köprülerini kaldırın ve/veya seviyelerini silin</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Grup</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Öğeyi düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Metin alanını düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Resmi Düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>İletkeni düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Seçilen nesneyi düzenle</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>Dosyayı açarken bir sorun oluştu %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>« %1 » projesini etkinleştir</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished">Bu sayfayı silmek istediğinizden emin misiniz?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished">Sayfaları sil</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished">Seçili %1 sayfayı silmek istediğinizden emin misiniz?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Hata</translation> @@ -8298,17 +8642,17 @@ Silmek için ilgili klemenslerin köprülerini kaldırın ve/veya seviyelerini s <translation>Öğenin özelliklerini düzenleme</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>İptal</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Yeniden yap</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Derinlik</translation> @@ -8334,73 +8678,73 @@ Silmek için ilgili klemenslerin köprülerini kaldırın ve/veya seviyelerini s <translation>Yakınlaştırma yok</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Bir Çizgi ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Bir dikdörtgen ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Bir elips ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Çokgen ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Metin ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Yay ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Bir terminal ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Dinamik metin alanı ekle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Şekli bitirmek için çift tıkla, sağ tık ile son noktayı iptal et</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Diyagramlara düzenlemez bir metin öğesi ekleyin</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Diyagramlara düzenlenebilir bir metin öğesi ekleyin</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Parçalar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation type="unfinished">Uyarılar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation type="unfinished">Büyük bir DXF import etmek zaman alabilir @@ -8427,66 +8771,66 @@ lütfen import sırasında bekleyin...</translation> <translation>Yapıştır ...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Düzeltildi]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation> [Salt Okunur]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Değişiklik yok</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Öğe Editörü</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n Seçilen Parça(lar).</numerusform> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Terminal Yokluğu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>Bir terminalin yokluğunda, eleman diğer elemanlara iletkenler ile bağlanamaz.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Terminal yokluğu</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Hata</b> :<br>Sayfa raporlarının yanlızca bir terminali olmalıdır.<br><b>Çözüm</b> :<br>Öğelerin yanlızca bir terminali olduğunu kontrol edin</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Bu öğenin doğrulaması oluşturuldu</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8494,12 +8838,12 @@ lütfen import sırasında bekleyin...</translation> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> ve</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8507,23 +8851,23 @@ lütfen import sırasında bekleyin...</translation> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b> : %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Hatalar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Uyarılar</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>%1 Dosyası mevcut değil.</translation> @@ -8535,177 +8879,177 @@ lütfen import sırasında bekleyin...</translation> <translation type="unfinished">Görünüm</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>%1 Dosyası açılamıyor.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Bu dosya geçerli bir XML belgesi değil</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Hata</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Salt okunur sürüm</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>Bu öğeyi değiştirmek için gerekli ayrıcalıklara sahip değilsiniz. Salt okunur modda açılacaktır.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Hata</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Bu dosyaya yazılamıyor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>Öğe kaydedilemiyor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished">Çok fazla ilkel, liste oluşturulmadı: %1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Dosya açılamadı</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Açmaya çalıştığınız %1 dosyası artık mevcut değil gibi görünüyor.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Öğeyi yeniden yükle</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Bu öğede değişiklik yaptınız. Yeniden yüklerseniz, bu değişiklikler kaybolacaktır. Öğeyi gerçekten yeniden yüklemek istiyor musunuz?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished">Yeniden boyutlandırılacak bir öğe import et</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">QElectroTech Öğeleri (* .elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Kaydedilemedi</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translatorcomment>I am not sure about this.It should be checked.</translatorcomment> @@ -8713,60 +9057,60 @@ les conditions requises ne sont pas valides</source> Şartlar sağlanamıyor</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Farklı kaydet</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech Öğeleri (* .elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Mevcut öğeyi kaydet ?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>%1 öğesini kaydetmek istiyor musunuz?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Bir dosya aç</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech Öğeleri (*.elmt);;XML Dosyaları (*.xml);;Tüm Dosyalar (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Varolmayan öğe.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Seçilen sanal yol bir öğe ile eşleşmiyor.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Öğe mevcut değil.</translation> @@ -8915,42 +9259,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>Proje « %1 : %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Proje %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Başlıksız proje</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [salt okunur]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [değiştirildi]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8958,19 +9302,19 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Şablon entegre edilirken bir hata oluştu.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Uyarılar</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8978,7 +9322,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> Şu anda QElectroTech sürüm %2 kullanıyorsunuz</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8987,32 +9331,32 @@ Que désirez vous faire ?</source> Ne yapmak istersiniz?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation type="unfinished">Uyarı </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished">Açmaya çalıştığınız proje, QElectroTech sürüm %1 ile kısmen uyumludur. </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished">Tamamen uyumlu hale getirmek için lütfen bu projeyi QElectroTech sürüm 0.8 veya 0.80 ile açın, projeyi kaydedin ve bu sürümle tekrar açın. Ne yapmak istersiniz?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Mevcut Proje Açılıyor</b><br/>Sayfa Oluşturma</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Devam eden projeyi açıyor...</b><br/>Çapraz referansları ayarlama</p></translation> </message> @@ -9050,127 +9394,126 @@ Ne yapmak istersiniz?</translation> <translation>Bu şablonun çoğaltılan kopyası için istenen adı girin</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Yeni</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Aç</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Bir dosyadan aç</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Kaydet</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Farklı kaydet</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Bir dosyaya kaydet</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Çıkış</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>K&es</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>K&opyala</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>Ya&pıştır</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Logoları yönet</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Ek bilgileri düzenle</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Yakınlaştır</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Uzaklaştır</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Sığdır</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Yakınlaştırma yok</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Sa&tır Ekle</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>&Sütun Ekle</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>Hücreleri &Birleştir</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>&Hücreleri Ayır</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9189,156 +9532,157 @@ Ne yapmak istersiniz?</translation> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Dosya</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Düzenle</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Görünüm</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Araçlar</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Düzenleme</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Görünüm</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Değişiklik yok</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>İptal edilenler</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Hücre özellikleri</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Değiştirilmiş]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Salt okunur]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - Antet Şablonu Düzenleyicisi</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Hata</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Bir şablon aç</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Bir dosya aç</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech Antet Şablonları(*%1);;Dosyalar XML (*.xml);;Tüm Dosyalar (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Şablonu farklı kaydet</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Farklı kaydet</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech Antet Şablonları(*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Ek bilgileri düzenle</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Bu boş alanı, anteti, lisansını veya yararlı bulduğunuz diğer tüm bilgileri yazarlarından bahsetmek için kullanabilirsiniz.</translation> </message> @@ -9498,18 +9842,18 @@ Ne yapmak istersiniz?</translation> <translation>Ekle </translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Bir resim seç...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Resim Dosyaları (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9518,7 +9862,7 @@ Ne yapmak istersiniz?</translation> <translation>Hata</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Resim yüklenemiyor.</translation> </message> @@ -10368,24 +10712,24 @@ Değiştirmek ister misiniz?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation type="unfinished">Açıklama</translation> @@ -10393,16 +10737,16 @@ Değiştirmek ister misiniz?</translation> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10699,22 +11043,22 @@ Değiştirmek ister misiniz?</translation> <translation>İletkenlerin oluşturulması</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Qet_tb_generator eklentisini yüklemek için <br> Ziyaret Et: <br> <a href='https://pypi.python.org/pypi/qet-tb-generator'> qet-tb-generator </a> <br> python 3.5 veya üzeri. <br> <B> <U> İlk önce Windows'a yükleyin </B> </U> <br> 1. Gerekirse, python 3.5 veya üstü bir sürüm yükleyin. <br> Ziyaret: <br> <a href='https://www.python.org/downloads/'> python.org </a> <br> 2. pip install qet_tb_generator <br> <B> <U> Windows'ta Güncelleme </B> </U> <br> python -m pip install --upgrade qet_tb_generator <br> >> kullanıcı bu script'in terminalde bu dizinde başlatılmasını sağlayabilir <br> C: \ users \ XXXX \ AppData \ Local \ Programs \ Python \ Python36-32 \ Scripts <br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished">qet_tb_generator eklentisini kurmak için<br>Şu adresi ziyaret edin :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> macOSX'te ilk kurulum</B></U><br>1. Gerekirse yalnızca python 3.11 paketini kurun, <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 Profile.command betiğini çalıştırın<br>çünkü program qet-tb-generator eklentisini bulmak için hardcoded PATH kullanır <br> Şu adresi ziyaret edin :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>howto</a><br>2. pip3 install qet_tb_generator<br><B><U> macOSX'te güncelleme</B></U><br> pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation type="unfinished">qet_tb_generator eklentisini kurmak için<br>Şu adresi ziyaret edin :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Python 3.5 veya üzeri gerektirir.<br><br><B><U> Linux'ta ilk kurulum</B></U><br>1. pip3'ün kurulu olduğunu kontrol edin: pip3 --version<br>Kurulu değilse şu komutla kurun: sudo apt-get install python3-pip<br>2. Programı kurun: sudo pip3 install qet_tb_generator<br>3. Programı çalıştırın: qet_tb_generator<br><br><B><U> Linux'ta güncelleme</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation type="unfinished">qet_tb_generator eklentisi başlatılırken hata oluştu</translation> </message> @@ -10742,7 +11086,7 @@ Değiştirmek ister misiniz?</translation> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation type="unfinished">bu kodda bir hatadır</translation> @@ -10972,7 +11316,7 @@ Değiştirmek ister misiniz?</translation> <translation type="unfinished">Bir öğe aç</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation type="unfinished">DXF dosyası import et</translation> </message> @@ -11120,6 +11464,11 @@ Lütfen aşağıdaki bağlantıyı takip ederek indirin ve kurulum klasörüne <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11166,52 +11515,303 @@ Lütfen tüm bilgileri görüntülemek için yeni bir tablo ekleyin veya mevcut <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Bir nokta ekle</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Bu noktayı sil</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Boyut</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Poligona bir nokta ekle</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Poligondan bir noktayı sil</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>%1'i düzenle</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>bir çizgi</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>bir dikdörtgen</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>bir elips</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>bir polyline</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>bir şekil</translation> </message> @@ -12146,177 +12746,234 @@ Diğer alanlar kullanılmaz.</translation> <translation>Form</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Özellik</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Kalınlık</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Normal</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Kesik Çizgili</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Noktalı</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Özellikler ve Noktalar</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Nokta Nokta</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Özel Çizgi</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Tür</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Renk</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Dolgu</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Stil</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Yok</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">Genişlik</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">Yükseklik</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Tam</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Yoğunluk 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Yoğunluk 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Yoğunluk 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Yoğunluk 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Yoğunluk 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Yoğunluk 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Yoğunluk 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Yatay</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Dikey</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Çapraz</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Arka çapraz</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Ön çapraz</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Çaprazlama</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>#Pozisyonu Kilitle</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>#Kapalı Çokgen</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Şeklin hattını düzenle</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Bir şeklin dolgusunu değiştirin</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Çokgeni kapat</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Basit form2u düzenle</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Basit formun özelliklerini düzenle</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_uk.ts b/lang/qet_uk.ts index 1744ce578..6ed14310d 100644 --- a/lang/qet_uk.ts +++ b/lang/qet_uk.ts @@ -616,59 +616,59 @@ <translation>до</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>Статус проєкту</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>Політика оновлення</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>Провідник</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>Обидва</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>Тільки нові</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>Тільки існуючі</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>Вимкнути</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>Елемент</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>Аркуш</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>Існуючі</translation> </message> @@ -847,6 +847,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Стовпці: </translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Додати %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>Зображення</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">Виберіть зображення...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">Помилка</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">Помилка</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1481,39 +1693,39 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>Редагувати властивості провідника</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>Підключити вибрані клеми</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>Без назви</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation type="unfinished">Помилка</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation type="unfinished"></translation> </message> @@ -2042,7 +2254,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation type="unfinished"></translation> @@ -2652,99 +2864,104 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>Простий</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>Елемент </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>Ім'я: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>Аркуш: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>Тип: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>Підтип: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>Позиція: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>Обертання: %1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>Розміри: %1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>Виводи: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>Розташування: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>Зайти в панелі</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>Редагувати елемент</translation> </message> @@ -4548,7 +4765,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>Це - шаблон, що може бути застосований до аркуша.</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [не використовується в проєкті]</translation> </message> @@ -4779,6 +4996,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished">Вертикальний</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4788,23 +5028,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>Зафіксувати положення</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>Розмір зображення</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>Змінити розмір зображення</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">Попередній перегляд</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6577,118 +6915,118 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>Цей проєкт був змінений. Хочете зберегти зміни?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Зберегти як</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>без_імені</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>Проєкт QElectroTech (*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>немає активних проєктів</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>Видалити цей аркуш?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>Проєкт тільки дл читання</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>Цей проєкт тільки для читання, тому він не мое бути очищений</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>Видалити не використані в проєкті шаблони</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>Видалити не використані в проєкті елементи</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>Видалити порожні категорії</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>Очистити проєкт</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>Додати аркуш</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>Перейти в початок проєкту</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>Перейти в кунець проєкту</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>Цей проєкт не містить аркушів</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align = "center"><b> Открытие текущего проєкта...</b><br/> Створення вкладок аркушів:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>Проєкт</translation> @@ -6778,166 +7116,166 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>Налаштування QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>Завантаження...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>Завантаження... піктограмма в треї</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>&Вихід</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>&Приховати</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>&Показати</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>&Приховати редактор схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>&Показати редактор схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>&Приховати редактор елементів</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>&Показати редактор елеиентів</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Приховати редактор штампів</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>&Показати редактор штампів</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>&Новий редактор схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>&Новий редактор елементів</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>Закрити QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>Згорнути QElectroTech в трей</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>Відновити QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>Редактори схем</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>Редактори елементів</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>Редактори штампів</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>Виявлений файл відновленя.<br>Відкрити його?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>Виявлені файли відновлення.<br>Відкрити їх?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>Файл відновлення</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>Використання: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6945,7 +7283,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6962,34 +7300,34 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR Вказує каталог з колекціями елеиентів </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR Вказує каталог з колекцією штампів </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR Вказує каталог конфігурації </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR Вказує каталог з файлами мов @@ -6999,917 +7337,928 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>Проєкти</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>Колекції</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>Немає змін</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>Виберіть дію, щоб повернути зроблені в схемі зміни</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>В цій панелі вказані різні зміни на даному аркуші. При виборі зміни аркуш буде повернутий в той стан, в якому він знаходився відразу після її застосування</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>Історія</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>E&експорт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>Експортувати цей аркуш в інший фрмат</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>Друк</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>Друк одного або більше аркушів цього проєкту</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>Експорт в pdf</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translatorcomment>підказка в рядку стану</translatorcomment> <translation>Експорт одного чи кількох аркушів цього проєкту</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>&Вихід</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>Закрити QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>Відміна</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>Відмінити останні дії</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>Повторити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>Виконати відмінену дію</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>&Вирізати</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>&Копіювати</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>Вст&авити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Копіює віділені елементи в буфер обміну</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>Копіює виділені елементи</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>Вставляє на лист еементи з буфера обміну</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>Відновити провідники</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>Перераховує траси провідників, ігнруючи зроблені користувачем зміни</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>Автоматичне створення провідників</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>Використовувати автоматичне створення провідників коли це можливо</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>Колір фону білий або сірий</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>Показати фон аркуша білим або сірим</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>Показати сітку</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>Властивості аркуша</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>Редагує властивості аркуша (розміри, інформацію шаблонів, властивості провідників...)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>Властивості проєкта</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>Додати аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>Видалити цей аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>Очистити проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>Експорт в формат CSV</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>Додати номенклатуру</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>Додати висновок</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>Керування клемними олодками (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>Запустити плагін створення клемної колодки</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>Експорт списка імен провідників</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>Експорт внутрішньої бази даних проєкта</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>Використовувати вкладки</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>Відображає різні відкриті проєкти у вкладках</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>Використовувати вікна</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>Відображає різні відкриті проєкти у вікнах</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>&Мозаїка</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>Розмістити вікна мозаїкою</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>&Каскад</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>Розмістити вікна каскадом</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>Режим виділення</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>Дозволяє вибрати елементи</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>Режим перегляду</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>Дозволяє переглядати аркуші не змінюючи їх</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>Наступний проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>Акривує наступний проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>Попередній проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>Активує попередній проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>&Новий</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>&Відкрити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>&Зберегти</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>Зберегти як</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>&Закрити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>Створити новий проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>Відкрити існуюий проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>Закрити цей проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>Зберегти цей проєкт і всі його аркуші</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>Зберегти цей проєкт під другим ім'ям</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>Додати стопчик</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>Видалити стопчик</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>Додати рядок</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>Видалити рядок</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>Додати стопчик</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>Видалити стопчик</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Збільшує висоту аркуша</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>Зменшує висоту аркуша</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>Видалити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>Повернути</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>Вибрати напрямок тексту</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>Знайти в панелі</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>Редагувати вибраний елемент</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>Згрупувати вибрані тексти</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>Видалити вибрані елементи</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>Поворот вибраних елементів та текстів</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>Повернути вибраний текст на визачений кут</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>Шукає вибраний елемент в панелі</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>Виділити все</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>Зняти виділення</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>Інвертування виділення</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Виділяє всі елементи на аркуші</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>Знімає виділення зі всіх елементів на аркуші</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>інветує виділення</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>Збільшити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>Зменшити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>Маштабувати вибране</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>Підігнати розмір</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>Відновити маштаб</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>Збільшити аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>Зменшити аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>Змінює маштаб для відображення всього, що на аркуші, незалежно від контента</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>Змінює маштаб для відображення тільки частини аркуша</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>Скинути маштаб</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>Додати текстове поле</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>Додати зображення</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>Додати лінію</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>Додати прямокутник</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>Додати еліпс</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>Додати ломану лінію</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>Додати текстове поле на цей аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>Додати зображенння на цей аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>Додати лінію на цей аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>Додати прямокутник на цей аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>Додати еліпс на цей аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>Додати ломану лінію на цей аркуш</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>Знайти/замінити</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>Інструменти</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>Вид</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>Схема</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>Додати</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Глибина</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>&Файл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>&Правка</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>П&роект</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>&Вид</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>&Вікно</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>&Нещодавно відкрите</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>Показати чи приховати головну панель інструментів</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>Приховати або показати панель інструментів «Вид»</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>Приховати або показати панель інструментів «Схема»</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>Приховати або показати панель елементів</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>Приховати або показати срисок змін</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>Показати проєкти</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>Проєкт %1 збережений в каталозі: %2.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>Відкрити файл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>Проєкти QElectroTech (*.qet);;Файли XML (*.xml);;Всі файли (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Неможливо відкрити файл</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Файл %1, котрий ви намагаєтеся відкрить, не існує.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>Файл, котрий ви намагаєтеся відкрити, недоступний для читання і не може бути відкритий. Перевірте права доступа.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>Відкривання файлів в режимі "тільки читання"</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>Проєкт, котрий ви намагаєтеся відкрити, недоступний для запису. Він буде відкритий в режимі "тільки читання".</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>Неможливо відкрити проєкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>Файл %1 не є проєктом QElectroTech. Він не може бути відкритим.</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7919,7 +8268,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation type="unfinished"> @@ -7929,107 +8278,102 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>Двічі клацніть, щоб завершити форму, клацніть правою кнопкою миші, щоб відмінити останню точку</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>Група</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>Редагувати елемент</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>Редагувати текстове поле</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>Редагувати зображення</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>Редагувати провідник</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>Редагувати вибраний об'єкт</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translatorcomment>вміст вікна повідомлення</translatorcomment> <translation>Помилка при відкриванні файла %1.</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>Активує проєкт «%1»</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>Помилка</translation> @@ -8324,115 +8668,115 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>Показувати</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>Файл %1 не існує.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>Неможливо відкрити файл %1.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>Цей файл не являється правильним XML-документом</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>Помилка</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>Версія тільки для читання</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>У вас немає прав для редагування цього елемента. Він буде відкритий в режимі "тільки читання".</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>Помилка</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>Неможливо зписати в цей файл</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>Неіснуючий елемент</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>Вибраний віртуальний шлях не відповідає елементу</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>Елемент не існує.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation></translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>%n виділена частина.</numerusform> @@ -8441,45 +8785,45 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>Відсутній ввід</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br> За відсутності виводів елемент не може бути з'єднаний з іншим елементом провідником.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>Відсутній вивід</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>Помилка</b>:<br> Звіти про аркуші мають мати один вивід.<br><b>Рішення</b>:<br>Перевірте, щоб у елемента був лише один вивід</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>Перевірка створеного елемента</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8489,12 +8833,12 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation> і</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8504,253 +8848,253 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>Помилки</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>Попередження</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>Неможливо відкрити файл</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>Схоже, що файл %1, котрий ви намагаєтеся відкрити, не існує.</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>Зберегти поточний елемент?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>Ви хочете зберегти елемент %1?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation type="unfinished">Элементи QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>Відміна</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>Повторити</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>Глибина</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>Додати лінію</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>Додати прямокутник</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>Додати еліпс</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>Додати багатокутник</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>Додати текст</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>Додати дугу</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>Додати вивід</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>Додати динамічне тектове поле</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>Зробіть подвійний клік, щоб завершити форму, клік правою клавішою, щоб видалити останню точку</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>Додати текст елемента, що не редагується</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>Додати текст елемента, що редагується</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>Частини</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>Немає змін</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>Редактор елементів</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>Реєстрація не вдалася</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>Запис не вдався, не вірні умови</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Зберегти як</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>Элементи QElectroTech (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>Перезавантажити елемент</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>Цей елемент був змінений з моменту останнього збереження. Якщо ви перезавантажете його, всі зміни будуть втрачені. Ви дійсно хочете перезавантажити елемент?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>Попередження</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>Імпорт великого файла в форматі DXF може зайняти деякий час, @@ -8903,43 +9247,43 @@ veuillez patienter durant l'import...</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translatorcomment>відображуваний заголовок для ProjectView -% 1 - це заголовок проєкта, -% 2 - це шлях до проєкта</translatorcomment> <translation>Проєкт «%1: %2»</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>Проєкт %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>Проєкт без імені</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [тільки читання]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [змінений]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8947,56 +9291,56 @@ Voulez-vous continuer ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>Під час інтеграції шаблона виникла помилка.</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>Попередження</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>Попередження</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>Відкривання поточного аркуша...</b><br/>Створення аркушів</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>Відкривання поточного аркуша...</b><br/>Налаштування перехресних посилань</p></translation> </message> @@ -9034,127 +9378,126 @@ Que désirez vous faire ?</source> <translation>Щоб дублювати цей шаблон, будьласка, введіть ім'я для його копії</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>&Новий</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>&Відкрити</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>Відкрити із файла</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>&Зберегти</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>Зберегти як</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>Зберегти в файл</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>&Вихід</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>&Вирізати</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>&Копіювати</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>&Вставити</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>Управління логотипами</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>Редагувати додаткову інформацію</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>Збільшити</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>Зменшити</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>Підігнать розмір</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>Відновити маштаб</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>Додати &рядок</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>Додати &стопчик</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>&Об'єднання чарунок</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>Роз&ділити чарунки</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9173,156 +9516,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>&Файл</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>&Правка</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>&Вид</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>Інструменти</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>Правка</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>Вид</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>Немає змін</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>Історія</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>Властивості чарунки</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[Змінено]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[Тільки читання]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - редактор штампів</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation type="unfinished">Помилка</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>Відкрити шаблон штампа</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>Відкрити файл</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>Шаблони штампів QElectroTech (*%1);;Файли XML (*.xml);; Всі файли (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>Зберегти шаблон як</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>Зберегти як</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>Шаблони штампів QElectroTech (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>Змінити додаткову інформацію</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>Ви можете використати це поле, щоб вказати автора цього шаблона, його ліцензію чи будь-яку іншу інформацію, яку вважаєте корисною.</translation> </message> @@ -9362,7 +9706,7 @@ Que désirez vous faire ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>це помилка в коді</translation> @@ -9591,7 +9935,7 @@ Que désirez vous faire ?</source> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9652,17 +9996,17 @@ Que désirez vous faire ?</source> <translation>змінити розмір аркуша</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>Виберіть зображення...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>Файли зображень (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>Помилка</translation> </message> @@ -9851,7 +10195,7 @@ Que désirez vous faire ?</source> <translation>текст</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>Імпортувати файл в форматі DXF</translation> </message> @@ -10226,22 +10570,22 @@ Voulez-vous la remplacer ?</source> <translation type="unfinished">Глибина</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>Щоб встановити плагін qet_tb_generator<br>Відвідайте:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Необхідний python версії 3.5 або вище.<br><B><U>Перша установка в Windows</B></U><br>1. При необхідності встановіть python 3.5 чи більш пізню версію<br>Посетите:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U>Оновлення в Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>користувач може запустити в терміналі<br>C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>Щоб встановити плагін qet_tb_generator<br>Відвідайте:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Потрібний Python 3.5 аби вище.<br><br><B><U>Перша установка в Linux</B></U><br>1. Перевірте чи встановлений у вас pip3: pip3 --version<br> Якщо не встановлений, то: sudo apt-get install python3-pip<br>2. Встановіть програму: sudo pip3 install qet_tb_generator<br>3. Запустіть программу: qet_tb_generator<br><br><B><U>Обновлення в Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>Помилка під час запуску плагіна qet_tb_generator</translation> </message> @@ -10390,24 +10734,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation type="unfinished">Тип</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>Аннотація</translation> @@ -10415,16 +10759,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation type="unfinished"></translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -11117,6 +11461,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11163,52 +11512,303 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>Додати точку</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>Видалити цю точку</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">Розмір</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>Додати точку до багатокутника</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>Видалити точку з багатокутника</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>Виміряти %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>лінія</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>прямокутник</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>еліпс</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>ламана лінія</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>фігура</translation> </message> @@ -12126,176 +12726,233 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>Лінія</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>Тип</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>Товщина</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>Колір</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>Звичайний</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>Пунктир</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>Крапками</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>Тире і крапка</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>Тире-крапка-крапка</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>Тире користувача</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>Заливка</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>Ні</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>Суцільний</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>Щільність 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>Щільність 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>Щільність 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>Щільність 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>Щільність 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>Щільність 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>Щільність 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>Горизонтальний</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>Вертикальний</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>Хрест</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>Зворотна діагональ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>Пряма діагональ</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>Діагональний хрест</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>Стиль</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>Закріпити положення</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>Замкнутий багатокутник</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>Змінити лінію фігури</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>Змінити заливку фігури</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>Замкнути багатокутник</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>Змінити просту фігуру</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>Змінити властивості простої фігури</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> <source>Éditer les propriétés d'une primitive </source> diff --git a/lang/qet_zh.ts b/lang/qet_zh.ts index c0ba2d3f3..3908b809d 100644 --- a/lang/qet_zh.ts +++ b/lang/qet_zh.ts @@ -586,7 +586,7 @@ <translation>窗体</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="149"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="148"/> <source>Project Status:</source> <translation>工程状态:</translation> </message> @@ -621,54 +621,54 @@ <translation>到</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="156"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="155"/> <source>Update Policy</source> <translation>更新策略</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="171"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="169"/> <source>Conductor</source> <translation>导线</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="188"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="275"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="353"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="186"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="272"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="348"/> <source>Only New</source> <translation>仅对新建</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="178"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="259"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="373"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="176"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="256"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="368"/> <source>Both</source> <translation>两者</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="208"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="307"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="383"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="206"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="304"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="378"/> <source>Disable</source> <translation>禁用</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="246"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="243"/> <source>Element</source> <translation>元件</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="198"/> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="291"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="196"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="288"/> <source>Only Existent</source> <translation>仅对现有</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="346"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="341"/> <source>Folio</source> <translation>图页</translation> </message> <message> - <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="363"/> + <location filename="../sources/autoNum/ui/autonumberingmanagementw.ui" line="358"/> <source>Existent</source> <translation>已有的</translation> </message> @@ -847,6 +847,14 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>显示表头</translation> </message> </context> +<context> + <name>ClickableImageLabel</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <source>Cliquez pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>CompositeTextEditDialog</name> <message> @@ -1413,13 +1421,217 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>添加 %1</translation> </message> </context> +<context> + <name>DiagramEventAddImage</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> + <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddPath</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> + <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>DiagramEventAddShape</name> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> + <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> + <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> + <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> + <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> + <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> + <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> + <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>DiagramImageItem</name> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="127"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>redimensionner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> + <source>pivoter/incliner</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> + <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source> -- %1 : mode %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> + <source>Cliquer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> + <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> + <source>Glisser : pivoter (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> + <source>Glisser : incliner (Maj = par pas de 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> + <source>Glisser : déplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> + <source>Déplacer le centre de rotation d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> + <source>Modifier une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> + <source>Restaurer les proportions d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> <source>une image</source> <translation>图片</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <source>Remplacer l'image...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <source>Couleur transparente...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <source>Rogner...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <source>Selectionner une image...</source> + <translation type="unfinished">选择图片...</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Erreur</source> + <translation type="unfinished">错误</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <source>Impossible de charger l'image.</source> + <translation type="unfinished">无法加载图片。</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <source>Remplacer une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir horizontal d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <source>Miroir vertical d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <source>Définir une couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <source>Rogner une image</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>DiagramPropertiesDialog</name> @@ -1470,40 +1682,40 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation>创建一个模板</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="507"/> + <location filename="../sources/diagramview.cpp" line="514"/> <source>X: %1 Y: %2</source> <translation>X:%1 Y:%2</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="596"/> + <location filename="../sources/diagramview.cpp" line="603"/> <source>Connecter les bornes sélectionnées</source> <translation>连接选定端子</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="884"/> + <location filename="../sources/diagramview.cpp" line="891"/> <source>Sans titre</source> <comment>what to display for untitled diagrams</comment> <translation>无标题</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1344"/> + <location filename="../sources/diagramview.cpp" line="1351"/> <source>Modèle enregistré</source> <translation>模板已注册</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1345"/> + <location filename="../sources/diagramview.cpp" line="1352"/> <source>Le modèle a été enregistré avec succès sous : %1</source> <translation>该模板已成功保存为: %1</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Erreur</source> <translation>错误</translation> </message> <message> - <location filename="../sources/diagramview.cpp" line="1348"/> + <location filename="../sources/diagramview.cpp" line="1355"/> <source>Le fichier n'a pas pu être écrit.</source> <translation>该文件无法写入。</translation> </message> @@ -2043,7 +2255,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>Element</name> <message> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1693"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1695"/> <source>Numéroter automatiquement un élément</source> <comment>undo caption</comment> <translation>自动为元件编号</translation> @@ -2654,101 +2866,106 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <context> <name>ElementPropertiesWidget</name> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="358"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="359"/> <source>Général</source> <translation>一般</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="368"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="369"/> <source>Élement </source> <translation>元件 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="371"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="372"/> <source>Nom : %1 </source> <translation>名称:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="374"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="375"/> <source>Folio : %1 </source> <translation>图页:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="376"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> <source>Type : %1 </source> <translation>类型:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="377"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> <source>Sous-type : %1 </source> <translation>子类:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="378"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> <source>Position : %1 </source> <translation>分区:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="379"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> <source>Rotation : %1° </source> <translation>旋转:%1° </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="380"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> <source>Dimensions : %1*%2 </source> <translation>尺寸:%1*%2 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="381"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="382"/> <source>Bornes : %1 </source> <translation>端子:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="383"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> <source>Nombre maximum de contacts esclaves définis : %1 </source> <translation>设置的从元件的最大数量: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="384"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="385"/> <source>Nombre de contacts esclaves utilisés : %1 </source> <translation>已使用的从元件数量: %1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="386"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="387"/> <source>Emplacement : %1 </source> <translation>路径:%1 </translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="405"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> + <source>Verrouiller la position</source> + <translation type="unfinished">锁定位置</translation> + </message> + <message> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> <source>Retrouver dans le panel</source> <translation>在面板中查找</translation> </message> <message> - <location filename="../sources/ui/elementpropertieswidget.cpp" line="407"/> + <location filename="../sources/ui/elementpropertieswidget.cpp" line="420"/> <source>Éditer l'élément</source> <translation>编辑元件</translation> </message> @@ -4562,7 +4779,7 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>这是一个标题栏模板,可以应用于图页。</translation> </message> <message> - <location filename="../sources/genericpanel.cpp" line="924"/> + <location filename="../sources/genericpanel.cpp" line="938"/> <source>%1 [non utilisé dans le projet]</source> <translation>%1 [未在工程中使用]</translation> </message> @@ -4793,6 +5010,29 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation>垂直</translation> </message> </context> +<context> + <name>ImageCropDialog</name> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> + <source>Rogner l'image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> + <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> + <source>Réinitialiser</source> + <translation type="unfinished">重置</translation> + </message> + <message> + <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> + <source>Revenir à l'image complète, sans rognage</source> + <translation type="unfinished"></translation> + </message> +</context> <context> <name>ImagePropertiesWidget</name> <message> @@ -4802,23 +5042,121 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> + <source>Largeur</source> + <translation type="unfinished">宽度</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> + <source> %</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> + <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> + <source>Hauteur</source> + <translation type="unfinished">高度</translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> + <source>Restaurer les proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> + <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> + <source>Inclinaison X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> + <source>Inclinaison Y</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> <source>Verrouiller la position</source> <translation>锁定位置</translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> - <source>Dimension de l'image</source> - <translation>图片大小</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> + <source>Modifier la largeur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.ui" line="50"/> - <source>%</source> - <translation>%</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> + <source>Modifier la hauteur d'une image</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagepropertieswidget.cpp" line="143"/> - <source>Modifier la taille d'une image</source> - <translation>修改图片的大小</translation> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> + <source>Modifier l'angle d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> + <source>Modifier l'inclinaison d'une image</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> + <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>ImageTransparentColorDialog</name> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> + <source>Couleur transparente</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <source>Image source</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <source>Aperçu</source> + <translation type="unfinished">预览</translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> + <source>Tolérance</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> + <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <source>Cliquez sur l'image pour choisir une couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> + <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> + <translation type="unfinished"></translation> </message> </context> <context> @@ -6587,118 +6925,118 @@ Les variables suivantes sont incompatibles : <context> <name>ProjectView</name> <message> - <location filename="../sources/projectview.cpp" line="320"/> + <location filename="../sources/projectview.cpp" line="324"/> <source>Le projet à été modifié. Voulez-vous enregistrer les modifications ?</source> <translation>该工程已被修改。 您要保存更改吗?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="340"/> + <location filename="../sources/projectview.cpp" line="344"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>另存为</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="341"/> + <location filename="../sources/projectview.cpp" line="345"/> <source>sansnom</source> <translation>未命名</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="342"/> + <location filename="../sources/projectview.cpp" line="346"/> <source>Projet QElectroTech (*.qet)</source> <comment>filetypes allowed when saving a project file</comment> <translation>QElectroTech工程(*.qet)</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="376"/> + <location filename="../sources/projectview.cpp" line="380"/> <source>aucun projet affiché</source> <comment>error message</comment> <translation>无活跃工程</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="399"/> + <location filename="../sources/projectview.cpp" line="403"/> <source>Supprimer le folio ?</source> <comment>message box title</comment> <translation>删除图页?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="400"/> + <location filename="../sources/projectview.cpp" line="404"/> <source>Êtes-vous sûr de vouloir supprimer ce folio du projet ?</source> <comment>message box content</comment> <translation>确定要从项目中删除此图纸吗?</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="745"/> + <location filename="../sources/projectview.cpp" line="749"/> <source>Projet en lecture seule</source> <comment>message box title</comment> <translation>只读工程</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="746"/> + <location filename="../sources/projectview.cpp" line="750"/> <source>Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer.</source> <comment>message box content</comment> <translation>该工程是只读的。 因此无法对其进行清理。</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="752"/> + <location filename="../sources/projectview.cpp" line="756"/> <source>Supprimer les modèles de cartouche inutilisés dans le projet</source> <translation>删除工程中未使用的标题栏模板</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="753"/> + <location filename="../sources/projectview.cpp" line="757"/> <source>Supprimer les éléments inutilisés dans le projet</source> <translation>删除工程中未使用的元件</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="754"/> + <location filename="../sources/projectview.cpp" line="758"/> <source>Supprimer les catégories vides</source> <translation>删除空分类</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="766"/> + <location filename="../sources/projectview.cpp" line="770"/> <source>Nettoyer le projet</source> <comment>window title</comment> <translation>清理工程</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="800"/> + <location filename="../sources/projectview.cpp" line="804"/> <source>Ajouter un folio</source> <translation>添加图页</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="803"/> + <location filename="../sources/projectview.cpp" line="807"/> <source>Revenir au debut du projet</source> <translation>转到工程首页</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="806"/> + <location filename="../sources/projectview.cpp" line="810"/> <source>Aller à la fin du projet</source> <translation>转到工程尾页</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="810"/> + <location filename="../sources/projectview.cpp" line="814"/> <source>go one page left</source> <translation>向左翻页</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="814"/> + <location filename="../sources/projectview.cpp" line="818"/> <source>go one page right</source> <translation>向右翻页</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="829"/> + <location filename="../sources/projectview.cpp" line="833"/> <source>Ce projet ne contient aucun folio</source> <comment>label displayed when a project contains no diagram</comment> <translation>该工程不包含任何图页</translation> </message> <message> - <location filename="../sources/projectview.cpp" line="942"/> + <location filename="../sources/projectview.cpp" line="946"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p></source> <translation><p align="center"><b>打开当前工程...</b><br/>创建图页标签:</p></translation> </message> <message> - <location filename="../sources/projectview.cpp" line="985"/> + <location filename="../sources/projectview.cpp" line="989"/> <source>Projet</source> <comment>window title for a project-less ProjectView</comment> <translation>工程</translation> @@ -6787,167 +7125,167 @@ Voulez-vous enregistrer les modifications ?</source> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2048"/> + <location filename="../sources/qetapp.cpp" line="2050"/> <source>Configurer QElectroTech</source> <comment>window title</comment> <translation>配置QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2206"/> + <location filename="../sources/qetapp.cpp" line="2208"/> <source>Chargement...</source> <comment>splash screen caption</comment> <translation>加载中...</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2366"/> + <location filename="../sources/qetapp.cpp" line="2368"/> <source>Chargement... icône du systray</source> <comment>splash screen caption</comment> <translation>加载中...系统托盘图标</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2370"/> + <location filename="../sources/qetapp.cpp" line="2372"/> <source>QElectroTech</source> <comment>systray menu title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2373"/> + <location filename="../sources/qetapp.cpp" line="2375"/> <source>&Quitter</source> <translation>退出(&Q)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2375"/> + <location filename="../sources/qetapp.cpp" line="2377"/> <source>&Masquer</source> <translation>隐藏(&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2377"/> + <location filename="../sources/qetapp.cpp" line="2379"/> <source>&Restaurer</source> <translation>恢复(&R)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2379"/> + <location filename="../sources/qetapp.cpp" line="2381"/> <source>&Masquer tous les éditeurs de schéma</source> <translation>隐藏所有原理图编辑器(&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2382"/> + <location filename="../sources/qetapp.cpp" line="2384"/> <source>&Restaurer tous les éditeurs de schéma</source> <translation>恢复所有原理图编辑器(&R)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2385"/> + <location filename="../sources/qetapp.cpp" line="2387"/> <source>&Masquer tous les éditeurs d'élément</source> <translation>隐藏所有元件编辑器(&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2388"/> + <location filename="../sources/qetapp.cpp" line="2390"/> <source>&Restaurer tous les éditeurs d'élément</source> <translation>恢复所有元件编辑器(&R)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2391"/> + <location filename="../sources/qetapp.cpp" line="2393"/> <source>&Masquer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>隐藏所有标题栏编辑器(&H)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2394"/> + <location filename="../sources/qetapp.cpp" line="2396"/> <source>&Restaurer tous les éditeurs de cartouche</source> <comment>systray submenu entry</comment> <translation>恢复所有标题栏编辑器(&R)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2397"/> + <location filename="../sources/qetapp.cpp" line="2399"/> <source>&Nouvel éditeur de schéma</source> <translation>新建原理图编辑器(&N)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2399"/> + <location filename="../sources/qetapp.cpp" line="2401"/> <source>&Nouvel éditeur d'élément</source> <translation>新建元件编辑器(&N)</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2401"/> + <location filename="../sources/qetapp.cpp" line="2403"/> <source>Ferme l'application QElectroTech</source> <translation>关闭 QElectroTech 应用程序</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2402"/> + <location filename="../sources/qetapp.cpp" line="2404"/> <source>Réduire QElectroTech dans le systray</source> <translation>减少系统托盘中的 QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2403"/> + <location filename="../sources/qetapp.cpp" line="2405"/> <source>Restaurer QElectroTech</source> <translation>恢复 QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2420"/> + <location filename="../sources/qetapp.cpp" line="2422"/> <source>QElectroTech</source> <comment>systray icon tooltip</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2514"/> + <location filename="../sources/qetapp.cpp" line="2516"/> <source>Éditeurs de schémas</source> <translation>原理图编辑器</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2524"/> + <location filename="../sources/qetapp.cpp" line="2526"/> <source>Éditeurs d'élément</source> <translation>元件编辑器</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2535"/> + <location filename="../sources/qetapp.cpp" line="2537"/> <source>Éditeurs de cartouche</source> <comment>systray menu entry</comment> <translation>标题栏编辑器</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2588"/> + <location filename="../sources/qetapp.cpp" line="2590"/> <source><b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br></source> <translation><b>找到以下还原文件,<br>要打开它吗?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2591"/> + <location filename="../sources/qetapp.cpp" line="2593"/> <source><b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br></source> <translation><b>已找到以下恢复文件,<br>要打开它们吗?</b><br></translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2606"/> + <location filename="../sources/qetapp.cpp" line="2608"/> <source>Fichier de restauration</source> <translation>恢复文件</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2653"/> + <location filename="../sources/qetapp.cpp" line="2655"/> <source>Rapport de plantage</source> <translation>崩溃报告</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2654"/> + <location filename="../sources/qetapp.cpp" line="2656"/> <source>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.</source> <translation>上次运行时 QElectroTech 未正常关闭。 以下是关闭前记录的最后日志消息——您可将其保存并附在缺陷报告中。</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2676"/> + <location filename="../sources/qetapp.cpp" line="2678"/> <source>Rapport de diagnostic</source> <translation>诊断报告</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2677"/> + <location filename="../sources/qetapp.cpp" line="2679"/> <source>Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public.</source> <translation>这包含本次会话的最新日志条目。请在附加到公开缺陷报告前检查内容。</translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2757"/> + <location filename="../sources/qetapp.cpp" line="2759"/> <source>Usage : </source> <translation>用法: </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2759"/> + <location filename="../sources/qetapp.cpp" line="2761"/> <source> [options] [fichier]... </source> @@ -6956,7 +7294,7 @@ Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2760"/> + <location filename="../sources/qetapp.cpp" line="2762"/> <source>QElectroTech, une application de réalisation de schémas électriques. Options disponibles : @@ -6973,35 +7311,35 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2766"/> + <location filename="../sources/qetapp.cpp" line="2768"/> <source> --common-elements-dir=DIR Definir le dossier de la collection d'elements </source> <translation> --common-elements-dir=DIR 设置元件库文件夹 </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2769"/> + <location filename="../sources/qetapp.cpp" line="2771"/> <source> --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches </source> <translation> --common-tbt-dir=DIR 设置标题栏模板库文件夹 </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2772"/> + <location filename="../sources/qetapp.cpp" line="2774"/> <source> --config-dir=DIR Definir le dossier de configuration </source> <translation> --config-dir=DIR 设置配置文件夹 </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2775"/> + <location filename="../sources/qetapp.cpp" line="2777"/> <source> --data-dir=DIR Definir le dossier de data </source> <translation> --data-dir=DIR 设置数据文件夹 </translation> </message> <message> - <location filename="../sources/qetapp.cpp" line="2777"/> + <location filename="../sources/qetapp.cpp" line="2779"/> <source> --lang-dir=DIR Definir le dossier contenant les fichiers de langue </source> <translation> --lang-dir=DIR 设置包含语言文件的文件夹 @@ -7011,921 +7349,932 @@ Options disponibles : <context> <name>QETDiagramEditor</name> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="115"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2673"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2676"/> + <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2742"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2745"/> <source>QElectroTech</source> <comment>window title</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="117"/> + <location filename="../sources/qetdiagrameditor.cpp" line="119"/> <source>QElectroTech</source> <comment>status bar message</comment> <translation>QElectroTech</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="227"/> + <location filename="../sources/qetdiagrameditor.cpp" line="230"/> <source>Aucune modification</source> <translation>无修改</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="228"/> + <location filename="../sources/qetdiagrameditor.cpp" line="231"/> <source>Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma</source> <comment>Status tip</comment> <translation>单击一个动作以回退你对原理图的更改</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="229"/> + <location filename="../sources/qetdiagrameditor.cpp" line="232"/> <source>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.</source> <comment>"What's this" tip</comment> <translation>此面板列出了对当前图页执行的不同操作。 单击一个动作可以让您返回到应用该操作后的图页状态。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="231"/> + <location filename="../sources/qetdiagrameditor.cpp" line="234"/> <source>Annulations</source> <comment>dock title</comment> <translation>撤销</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="278"/> + <location filename="../sources/qetdiagrameditor.cpp" line="281"/> <source>E&xporter</source> <translation>导出(&X)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="289"/> + <location filename="../sources/qetdiagrameditor.cpp" line="292"/> <source>Imprimer</source> <translation>打印</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="310"/> + <location filename="../sources/qetdiagrameditor.cpp" line="313"/> <source>&Quitter</source> <translation>退出(&Q)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="316"/> + <location filename="../sources/qetdiagrameditor.cpp" line="319"/> <source>Annuler</source> <translation>撤销</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="324"/> <source>Refaire</source> <translation>恢复</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="327"/> + <location filename="../sources/qetdiagrameditor.cpp" line="330"/> <source>Co&uper</source> <translation>剪切(&X)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="328"/> + <location filename="../sources/qetdiagrameditor.cpp" line="331"/> <source>Cop&ier</source> <translation>复制(&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="329"/> + <location filename="../sources/qetdiagrameditor.cpp" line="332"/> <source>C&oller</source> <translation>粘贴(&V)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="353"/> + <location filename="../sources/qetdiagrameditor.cpp" line="356"/> <source>Réinitialiser les conducteurs</source> <translation>重置导线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="362"/> + <location filename="../sources/qetdiagrameditor.cpp" line="365"/> <source>Création automatique de conducteur(s)</source> <comment>Tool tip of auto conductor</comment> <translation>自动连接导线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="363"/> + <location filename="../sources/qetdiagrameditor.cpp" line="366"/> <source>Utiliser la création automatique de conducteur(s) quand cela est possible</source> <comment>Status tip of auto conductor</comment> <translation>尽可能使用自动连接导线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="386"/> + <location filename="../sources/qetdiagrameditor.cpp" line="389"/> <source>Couleur de fond blanc/gris</source> <comment>Tool tip of white/grey background button</comment> <translation>背景色 白色/灰色</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="387"/> + <location filename="../sources/qetdiagrameditor.cpp" line="390"/> <source>Affiche la couleur de fond du folio en blanc ou en gris</source> <comment>Status tip of white/grey background button</comment> <translation>以白色或灰色显示页面的背景色</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="396"/> + <location filename="../sources/qetdiagrameditor.cpp" line="399"/> <source>Afficher la grille</source> <translation>显示网格</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="397"/> + <location filename="../sources/qetdiagrameditor.cpp" line="400"/> <source>Affiche ou masque la grille des folios</source> <translation>显示或隐藏页面网格</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="422"/> + <location filename="../sources/qetdiagrameditor.cpp" line="425"/> <source>Propriétés du folio</source> <translation>图页属性</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="434"/> + <location filename="../sources/qetdiagrameditor.cpp" line="437"/> <source>Propriétés du projet</source> <translation>工程属性</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="440"/> + <location filename="../sources/qetdiagrameditor.cpp" line="443"/> <source>Ajouter un folio</source> <translation>添加图页</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="449"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2375"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2398"/> + <location filename="../sources/qetdiagrameditor.cpp" line="452"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2467"/> <source>Supprimer le folio</source> <translation>删除图页</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="453"/> + <location filename="../sources/qetdiagrameditor.cpp" line="456"/> <source>Nettoyer le projet</source> <translation>清理工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="478"/> + <location filename="../sources/qetdiagrameditor.cpp" line="481"/> <source>Ajouter un sommaire</source> <translation>添加摘要</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="495"/> + <location filename="../sources/qetdiagrameditor.cpp" line="498"/> <source>Lancer le plugin de création de borniers</source> <translation>启动端子排创建插件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="531"/> + <location filename="../sources/qetdiagrameditor.cpp" line="534"/> <source>en utilisant des onglets</source> <translation>使用选项卡</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="536"/> + <location filename="../sources/qetdiagrameditor.cpp" line="539"/> <source>en utilisant des fenêtres</source> <translation>使用窗口</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="555"/> + <location filename="../sources/qetdiagrameditor.cpp" line="558"/> <source>Mode Selection</source> <translation>选择模式</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="567"/> + <location filename="../sources/qetdiagrameditor.cpp" line="570"/> <source>Mode Visualisation</source> <translation>查看模式</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="546"/> + <location filename="../sources/qetdiagrameditor.cpp" line="549"/> <source>&Mosaïque</source> <translation>平铺(&T)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="550"/> + <location filename="../sources/qetdiagrameditor.cpp" line="553"/> <source>&Cascade</source> <translation>层叠(&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="584"/> + <location filename="../sources/qetdiagrameditor.cpp" line="587"/> <source>Projet suivant</source> <translation>下一个工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="589"/> + <location filename="../sources/qetdiagrameditor.cpp" line="592"/> <source>Projet précédent</source> <translation>上一个工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="595"/> + <location filename="../sources/qetdiagrameditor.cpp" line="598"/> <source>&Nouveau</source> <translation>新建(&N)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="599"/> <source>&Ouvrir</source> <translation>打开(&O)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="597"/> + <location filename="../sources/qetdiagrameditor.cpp" line="600"/> <source>&Enregistrer</source> <translation>保存(&S)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="598"/> + <location filename="../sources/qetdiagrameditor.cpp" line="601"/> <source>Enregistrer sous</source> <translation>另存为</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="599"/> + <location filename="../sources/qetdiagrameditor.cpp" line="602"/> <source>&Fermer</source> <translation>关闭(&C)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="610"/> <source>Crée un nouveau projet</source> <comment>status bar tip</comment> <translation>创建一个新工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="608"/> + <location filename="../sources/qetdiagrameditor.cpp" line="611"/> <source>Ouvre un projet existant</source> <comment>status bar tip</comment> <translation>打开现有工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="609"/> + <location filename="../sources/qetdiagrameditor.cpp" line="612"/> <source>Ferme le projet courant</source> <comment>status bar tip</comment> <translation>关闭当前工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="610"/> + <location filename="../sources/qetdiagrameditor.cpp" line="613"/> <source>Enregistre le projet courant et tous ses folios</source> <comment>status bar tip</comment> <translation>保存当前工程及其所有图页</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="611"/> + <location filename="../sources/qetdiagrameditor.cpp" line="614"/> <source>Enregistre le projet courant avec un autre nom de fichier</source> <comment>status bar tip</comment> <translation>用另一个文件名保存当前工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="624"/> + <location filename="../sources/qetdiagrameditor.cpp" line="627"/> <source>Ajouter une colonne</source> <translation>添加列</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="625"/> + <location filename="../sources/qetdiagrameditor.cpp" line="628"/> <source>Enlever une colonne</source> <translation>删除列</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="629"/> + <location filename="../sources/qetdiagrameditor.cpp" line="632"/> <source>Ajoute une colonne au folio</source> <comment>status bar tip</comment> <translation>在图页中添加一列</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="630"/> + <location filename="../sources/qetdiagrameditor.cpp" line="633"/> <source>Enlève une colonne au folio</source> <comment>status bar tip</comment> <translation>从图页中删除一列</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="631"/> + <location filename="../sources/qetdiagrameditor.cpp" line="634"/> <source>Agrandit le folio en hauteur</source> <comment>status bar tip</comment> <translation>放大页面高度</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="632"/> + <location filename="../sources/qetdiagrameditor.cpp" line="635"/> <source>Rétrécit le folio en hauteur</source> <comment>status bar tip</comment> <translation>缩小页面高度</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="642"/> + <location filename="../sources/qetdiagrameditor.cpp" line="645"/> <source>Supprimer</source> <translation>删除</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="643"/> + <location filename="../sources/qetdiagrameditor.cpp" line="646"/> <source>Pivoter</source> <translation>旋转</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="645"/> + <location filename="../sources/qetdiagrameditor.cpp" line="648"/> <source>Orienter les textes</source> <translation>旋转文本</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="646"/> + <location filename="../sources/qetdiagrameditor.cpp" line="649"/> <source>Retrouver dans le panel</source> <translation>在面板中查找</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="647"/> + <location filename="../sources/qetdiagrameditor.cpp" line="650"/> <source>Éditer l'item sélectionné</source> <translation>编辑所选对象</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="769"/> + <location filename="../sources/qetdiagrameditor.cpp" line="789"/> <source>Chercher/remplacer</source> <translation>查找/替换</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="843"/> + <location filename="../sources/qetdiagrameditor.cpp" line="863"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>图层</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1670"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1725"/> <source>Groupe</source> <translation>群组</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="470"/> + <location filename="../sources/qetdiagrameditor.cpp" line="473"/> <source>Ajouter une nomenclature</source> <translation>添加物料清单</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="648"/> + <location filename="../sources/qetdiagrameditor.cpp" line="651"/> <source>Grouper les textes sélectionnés</source> <translation>将选定的文本分组</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="659"/> <source>Enlève les éléments sélectionnés du folio</source> <comment>status bar tip</comment> <translation>从图页中删除选定的元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="660"/> <source>Pivote les éléments et textes sélectionnés</source> <comment>status bar tip</comment> <translation>旋转选定的元件和文本</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="659"/> + <location filename="../sources/qetdiagrameditor.cpp" line="662"/> <source>Pivote les textes sélectionnés à un angle précis</source> <comment>status bar tip</comment> <translation>以特定角度旋转选定的文本</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="660"/> + <location filename="../sources/qetdiagrameditor.cpp" line="663"/> <source>Retrouve l'élément sélectionné dans le panel</source> <comment>status bar tip</comment> <translation>在面板中查找选择的元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="673"/> + <location filename="../sources/qetdiagrameditor.cpp" line="676"/> <source>Tout sélectionner</source> <translation>全选</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="674"/> + <location filename="../sources/qetdiagrameditor.cpp" line="677"/> <source>Désélectionner tout</source> <translation>取消全选</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="675"/> + <location filename="../sources/qetdiagrameditor.cpp" line="678"/> <source>Inverser la sélection</source> <translation>反选</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="684"/> <source>Sélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>选择图页中的所有元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="682"/> + <location filename="../sources/qetdiagrameditor.cpp" line="685"/> <source>Désélectionne tous les éléments du folio</source> <comment>status bar tip</comment> <translation>取消图页所有元件的选择</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="683"/> + <location filename="../sources/qetdiagrameditor.cpp" line="686"/> <source>Désélectionne les éléments sélectionnés et sélectionne les éléments non sélectionnés</source> <comment>status bar tip</comment> <translation>取消选中的元件并选择未选中的元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="692"/> + <location filename="../sources/qetdiagrameditor.cpp" line="695"/> <source>Zoom avant</source> <translation>放大</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="693"/> + <location filename="../sources/qetdiagrameditor.cpp" line="696"/> <source>Zoom arrière</source> <translation>缩小</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="694"/> + <location filename="../sources/qetdiagrameditor.cpp" line="697"/> <source>Zoom sur le contenu</source> <translation>放大焦点内容</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="695"/> + <location filename="../sources/qetdiagrameditor.cpp" line="698"/> <source>Zoom adapté</source> <translation>自适应缩放</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="696"/> + <location filename="../sources/qetdiagrameditor.cpp" line="699"/> <source>Pas de zoom</source> <translation>无缩放</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="708"/> <source>Agrandit le folio</source> <comment>status bar tip</comment> <translation>放大页面</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="709"/> <source>Rétrécit le folio</source> <comment>status bar tip</comment> <translation>缩小页面</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="707"/> + <location filename="../sources/qetdiagrameditor.cpp" line="710"/> <source>Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre</source> <translation>调整缩放以显示页面的所有内容</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="708"/> + <location filename="../sources/qetdiagrameditor.cpp" line="711"/> <source>Adapte le zoom exactement sur le cadre du folio</source> <comment>status bar tip</comment> <translation>调整缩放以完全适应页面大小</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="709"/> + <location filename="../sources/qetdiagrameditor.cpp" line="712"/> <source>Restaure le zoom par défaut</source> <comment>status bar tip</comment> <translation>恢复默认缩放</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="720"/> + <location filename="../sources/qetdiagrameditor.cpp" line="736"/> <source>Ajouter un champ de texte</source> <translation>添加文本框</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="721"/> + <location filename="../sources/qetdiagrameditor.cpp" line="737"/> <source>Ajouter une image</source> <translation>添加图片</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="726"/> + <location filename="../sources/qetdiagrameditor.cpp" line="742"/> <source>Ajouter un rectangle</source> <translation>添加矩形</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="727"/> + <location filename="../sources/qetdiagrameditor.cpp" line="743"/> <source>Ajouter une ellipse</source> <translation>添加椭圆</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="728"/> + <location filename="../sources/qetdiagrameditor.cpp" line="744"/> <source>Ajouter une polyligne</source> <translation>添加多段线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="280"/> + <location filename="../sources/qetdiagrameditor.cpp" line="283"/> <source>Exporte le folio courant dans un autre format</source> <comment>status bar tip</comment> <translation>将当前图页导出为另一种格式</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="291"/> + <location filename="../sources/qetdiagrameditor.cpp" line="294"/> <source>Imprime un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>打印当前工程的一页或多页</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="312"/> + <location filename="../sources/qetdiagrameditor.cpp" line="315"/> <source>Ferme l'application QElectroTech</source> <comment>status bar tip</comment> <translation>关闭 QElectroTech 应用程序</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="319"/> + <location filename="../sources/qetdiagrameditor.cpp" line="322"/> <source>Annule l'action précédente</source> <comment>status bar tip</comment> <translation>撤销上一个动作</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="168"/> + <location filename="../sources/qetdiagrameditor.cpp" line="171"/> <source>Projets</source> <comment>dock title</comment> <translation>工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="203"/> + <location filename="../sources/qetdiagrameditor.cpp" line="206"/> <source>Collections</source> <translation>库</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="324"/> + <location filename="../sources/qetdiagrameditor.cpp" line="327"/> <source>Restaure l'action annulée</source> <comment>status bar tip</comment> <translation>恢复被撤销的动作</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="338"/> <source>Transfère les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>将所选元件剪切到剪贴板</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="339"/> <source>Copie les éléments sélectionnés dans le presse-papier</source> <comment>status bar tip</comment> <translation>将所选元件复制到剪贴板</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="337"/> + <location filename="../sources/qetdiagrameditor.cpp" line="340"/> <source>Place les éléments du presse-papier sur le folio</source> <comment>status bar tip</comment> <translation>将剪贴板元件放在图页上</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="626"/> + <location filename="../sources/qetdiagrameditor.cpp" line="629"/> <source>Ajouter une ligne</source> <comment>Add row</comment> <translation>添加行</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="627"/> + <location filename="../sources/qetdiagrameditor.cpp" line="630"/> <source>Enlever une ligne</source> <comment>Remove row</comment> <translation>删除行</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="725"/> + <location filename="../sources/qetdiagrameditor.cpp" line="741"/> <source>Ajouter une ligne</source> <comment>Draw line</comment> <translation>添加直线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="355"/> + <location filename="../sources/qetdiagrameditor.cpp" line="358"/> <source>Recalcule les chemins des conducteurs sans tenir compte des modifications</source> <comment>status bar tip</comment> <translation>忽略修改,重新计算导线路径</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="424"/> + <location filename="../sources/qetdiagrameditor.cpp" line="427"/> <source>Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...)</source> <comment>status bar tip</comment> <translation>编辑图页属性(尺寸、标题栏信息、导线属性等)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="537"/> + <location filename="../sources/qetdiagrameditor.cpp" line="540"/> <source>Présente les différents projets ouverts dans des sous-fenêtres</source> <comment>status bar tip</comment> <translation>在窗口中显示打开的不同工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="532"/> + <location filename="../sources/qetdiagrameditor.cpp" line="535"/> <source>Présente les différents projets ouverts des onglets</source> <comment>status bar tip</comment> <translation>在选项卡中显示打开的不同工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="556"/> + <location filename="../sources/qetdiagrameditor.cpp" line="559"/> <source>Permet de sélectionner les éléments</source> <comment>status bar tip</comment> <translation>允许您选择元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="568"/> + <location filename="../sources/qetdiagrameditor.cpp" line="571"/> <source>Permet de visualiser le folio sans pouvoir le modifier</source> <comment>status bar tip</comment> <translation>允许您查看图页但不能修改它</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="547"/> + <location filename="../sources/qetdiagrameditor.cpp" line="550"/> <source>Dispose les fenêtres en mosaïque</source> <comment>status bar tip</comment> <translation>平铺窗口</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="279"/> - <location filename="../sources/qetdiagrameditor.cpp" line="290"/> - <location filename="../sources/qetdiagrameditor.cpp" line="311"/> - <location filename="../sources/qetdiagrameditor.cpp" line="318"/> - <location filename="../sources/qetdiagrameditor.cpp" line="323"/> - <location filename="../sources/qetdiagrameditor.cpp" line="331"/> - <location filename="../sources/qetdiagrameditor.cpp" line="332"/> - <location filename="../sources/qetdiagrameditor.cpp" line="333"/> - <location filename="../sources/qetdiagrameditor.cpp" line="354"/> - <location filename="../sources/qetdiagrameditor.cpp" line="423"/> - <location filename="../sources/qetdiagrameditor.cpp" line="441"/> - <location filename="../sources/qetdiagrameditor.cpp" line="585"/> - <location filename="../sources/qetdiagrameditor.cpp" line="590"/> - <location filename="../sources/qetdiagrameditor.cpp" line="601"/> - <location filename="../sources/qetdiagrameditor.cpp" line="602"/> - <location filename="../sources/qetdiagrameditor.cpp" line="603"/> + <location filename="../sources/qetdiagrameditor.cpp" line="282"/> + <location filename="../sources/qetdiagrameditor.cpp" line="293"/> + <location filename="../sources/qetdiagrameditor.cpp" line="314"/> + <location filename="../sources/qetdiagrameditor.cpp" line="321"/> + <location filename="../sources/qetdiagrameditor.cpp" line="326"/> + <location filename="../sources/qetdiagrameditor.cpp" line="334"/> + <location filename="../sources/qetdiagrameditor.cpp" line="335"/> + <location filename="../sources/qetdiagrameditor.cpp" line="336"/> + <location filename="../sources/qetdiagrameditor.cpp" line="357"/> + <location filename="../sources/qetdiagrameditor.cpp" line="426"/> + <location filename="../sources/qetdiagrameditor.cpp" line="444"/> + <location filename="../sources/qetdiagrameditor.cpp" line="588"/> + <location filename="../sources/qetdiagrameditor.cpp" line="593"/> <location filename="../sources/qetdiagrameditor.cpp" line="604"/> <location filename="../sources/qetdiagrameditor.cpp" line="605"/> - <location filename="../sources/qetdiagrameditor.cpp" line="650"/> - <location filename="../sources/qetdiagrameditor.cpp" line="651"/> - <location filename="../sources/qetdiagrameditor.cpp" line="652"/> + <location filename="../sources/qetdiagrameditor.cpp" line="606"/> + <location filename="../sources/qetdiagrameditor.cpp" line="607"/> + <location filename="../sources/qetdiagrameditor.cpp" line="608"/> <location filename="../sources/qetdiagrameditor.cpp" line="653"/> <location filename="../sources/qetdiagrameditor.cpp" line="654"/> - <location filename="../sources/qetdiagrameditor.cpp" line="677"/> - <location filename="../sources/qetdiagrameditor.cpp" line="678"/> - <location filename="../sources/qetdiagrameditor.cpp" line="679"/> - <location filename="../sources/qetdiagrameditor.cpp" line="699"/> - <location filename="../sources/qetdiagrameditor.cpp" line="700"/> - <location filename="../sources/qetdiagrameditor.cpp" line="701"/> + <location filename="../sources/qetdiagrameditor.cpp" line="655"/> + <location filename="../sources/qetdiagrameditor.cpp" line="656"/> + <location filename="../sources/qetdiagrameditor.cpp" line="657"/> + <location filename="../sources/qetdiagrameditor.cpp" line="680"/> + <location filename="../sources/qetdiagrameditor.cpp" line="681"/> + <location filename="../sources/qetdiagrameditor.cpp" line="682"/> <location filename="../sources/qetdiagrameditor.cpp" line="702"/> <location filename="../sources/qetdiagrameditor.cpp" line="703"/> - <location filename="../sources/qetdiagrameditor.cpp" line="770"/> + <location filename="../sources/qetdiagrameditor.cpp" line="704"/> + <location filename="../sources/qetdiagrameditor.cpp" line="705"/> + <location filename="../sources/qetdiagrameditor.cpp" line="706"/> + <location filename="../sources/qetdiagrameditor.cpp" line="790"/> + <location filename="../sources/qetdiagrameditor.cpp" line="801"/> <source>Éditeur de schémas</source> <translation>原理图编辑器</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="300"/> + <location filename="../sources/qetdiagrameditor.cpp" line="303"/> <source>Exporter en pdf</source> <translation>导出为 PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="301"/> + <location filename="../sources/qetdiagrameditor.cpp" line="304"/> <source>Exporte un ou plusieurs folios du projet courant</source> <comment>status bar tip</comment> <translation>导出当前工程的一个或多个图页</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="371"/> + <location filename="../sources/qetdiagrameditor.cpp" line="374"/> <source>Coupure automatique de conducteur(s)</source> <comment>Tool tip of auto break conductor</comment> <translation>导线自动断开</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="372"/> + <location filename="../sources/qetdiagrameditor.cpp" line="375"/> <source>Couper automatiquement les conducteurs existants lors du placement d'un élément</source> <comment>Status tip of auto break conductor</comment> <translation>放置元件时自动切断现有导线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="410"/> + <location filename="../sources/qetdiagrameditor.cpp" line="413"/> <source>Afficher les guides</source> <translation>显示参考线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="411"/> + <location filename="../sources/qetdiagrameditor.cpp" line="414"/> <source>Affiche ou masque les guides</source> <translation>显示或隐藏参考线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="463"/> + <location filename="../sources/qetdiagrameditor.cpp" line="466"/> <source>Exporter au format CSV</source> <translation>导出为 CSV 格式</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="485"/> + <location filename="../sources/qetdiagrameditor.cpp" line="488"/> <source>Gestionnaire de borniers (DEV)</source> <translation>端子排管理器 (DEV)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="499"/> + <location filename="../sources/qetdiagrameditor.cpp" line="502"/> <source>Exporter la liste des noms de conducteurs</source> <translation>导出导线名称列表</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="509"/> + <location filename="../sources/qetdiagrameditor.cpp" line="512"/> <source>Exporter le plan de câblage</source> <translation>导出接线表</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="520"/> + <location filename="../sources/qetdiagrameditor.cpp" line="523"/> <source>Numérotation automatique des bornes</source> <translation>端子自动编号</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="527"/> <source>Exporter la base de donnée interne du projet</source> <translation>导出内部工程数据库</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="551"/> + <location filename="../sources/qetdiagrameditor.cpp" line="554"/> <source>Dispose les fenêtres en cascade</source> <comment>status bar tip</comment> <translation>层叠窗口</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="586"/> + <location filename="../sources/qetdiagrameditor.cpp" line="589"/> <source>Active le projet suivant</source> <comment>status bar tip</comment> <translation>激活下一个工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="591"/> + <location filename="../sources/qetdiagrameditor.cpp" line="594"/> <source>Active le projet précédent</source> <comment>status bar tip</comment> <translation>激活上一个工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="644"/> + <location filename="../sources/qetdiagrameditor.cpp" line="647"/> <source>Pivoter le groupe</source> <translation>旋转组</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="658"/> + <location filename="../sources/qetdiagrameditor.cpp" line="661"/> <source>Pivote la sélection comme un groupe autour de son centre, au lieu de chaque élément sur place</source> <comment>status bar tip</comment> <translation>将所选对象作为一个整体围绕中心旋转,而不是每个元件原地旋转</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="723"/> + <location filename="../sources/qetdiagrameditor.cpp" line="739"/> <source>Ajouter un PDF</source> <translation>添加 PDF</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="729"/> + <location filename="../sources/qetdiagrameditor.cpp" line="745"/> + <source>Ajouter une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="746"/> <source>Ajouter un plan de bornes</source> <translation>添加端子排</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="731"/> + <location filename="../sources/qetdiagrameditor.cpp" line="748"/> <source>Ajoute un champ de texte sur le folio actuel</source> <translation>将文本框添加到当前页面</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="732"/> + <location filename="../sources/qetdiagrameditor.cpp" line="749"/> <source>Ajoute une image sur le folio actuel</source> <translation>将图像添加到当前页面</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="734"/> + <location filename="../sources/qetdiagrameditor.cpp" line="751"/> <source>Ajoute une page PDF sur le folio actuel</source> <translation>在当前图纸中添加 PDF 页面</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="736"/> + <location filename="../sources/qetdiagrameditor.cpp" line="753"/> <source>Ajoute une ligne sur le folio actuel</source> <translation>在当前页面中添加一条线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="737"/> + <location filename="../sources/qetdiagrameditor.cpp" line="754"/> <source>Ajoute un rectangle sur le folio actuel</source> <translation>在当前页面添加一个矩形</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="738"/> + <location filename="../sources/qetdiagrameditor.cpp" line="755"/> <source>Ajoute une ellipse sur le folio actuel</source> <translation>在当前页面添加一个椭圆</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="739"/> + <location filename="../sources/qetdiagrameditor.cpp" line="756"/> <source>Ajoute une polyligne sur le folio actuel</source> <translation>在当前图页添加多段线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="740"/> + <location filename="../sources/qetdiagrameditor.cpp" line="757"/> + <source>Ajoute une courbe de Bézier sur le folio actuel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetdiagrameditor.cpp" line="758"/> <source>Ajoute un plan de bornier sur le folio actuel</source> <translation>在当前图页添加端子排</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="780"/> + <location filename="../sources/qetdiagrameditor.cpp" line="800"/> <source>Atteindre un élément</source> <translation>跳转到元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="782"/> + <location filename="../sources/qetdiagrameditor.cpp" line="802"/> <source>Recherche et sélectionne rapidement un élément du folio</source> <comment>status bar tip</comment> <translation>快速搜索并选中图纸中的元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="799"/> + <location filename="../sources/qetdiagrameditor.cpp" line="819"/> <source>Outils</source> <translation>工具</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="802"/> + <location filename="../sources/qetdiagrameditor.cpp" line="822"/> <source>Affichage</source> <translation>显示</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="805"/> + <location filename="../sources/qetdiagrameditor.cpp" line="825"/> <source>Schéma</source> <translation>原理图</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="839"/> + <location filename="../sources/qetdiagrameditor.cpp" line="859"/> <source>Ajouter</source> <translation>添加</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="860"/> + <location filename="../sources/qetdiagrameditor.cpp" line="880"/> <source>&Fichier</source> <translation>文件(&F)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="861"/> + <location filename="../sources/qetdiagrameditor.cpp" line="881"/> <source>&Édition</source> <translation>编辑(&E)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="862"/> + <location filename="../sources/qetdiagrameditor.cpp" line="882"/> <source>&Projet</source> <translation>工程(&P)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="863"/> + <location filename="../sources/qetdiagrameditor.cpp" line="883"/> <source>Afficha&ge</source> <translation>显示(&D)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="865"/> + <location filename="../sources/qetdiagrameditor.cpp" line="885"/> <source>Fe&nêtres</source> <translation>窗口(&W)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="874"/> + <location filename="../sources/qetdiagrameditor.cpp" line="894"/> <source>&Récemment ouverts</source> <translation>最近打开(&R)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="929"/> + <location filename="../sources/qetdiagrameditor.cpp" line="949"/> <source>Affiche ou non la barre d'outils principale</source> <translation>是否显示主工具栏</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="930"/> + <location filename="../sources/qetdiagrameditor.cpp" line="950"/> <source>Affiche ou non la barre d'outils Affichage</source> <translation>是否显示显示工具栏</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="931"/> + <location filename="../sources/qetdiagrameditor.cpp" line="951"/> <source>Affiche ou non la barre d'outils Schéma</source> <translation>是否显示原理图工具栏</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="932"/> + <location filename="../sources/qetdiagrameditor.cpp" line="952"/> <source>Affiche ou non le panel d'appareils</source> <translation>是否显示工程面板</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="933"/> + <location filename="../sources/qetdiagrameditor.cpp" line="953"/> <source>Affiche ou non la liste des modifications</source> <translation>是否显示撤销列表</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="937"/> + <location filename="../sources/qetdiagrameditor.cpp" line="957"/> <source>Afficher les projets</source> <translation>显示工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1019"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1042"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1039"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1062"/> <source>Projet %1 enregistré dans le repertoire: %2.</source> <translation>工程 %1 保存在目录中:%2。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1090"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1110"/> <source>Ouvrir un fichier</source> <translation>打开文件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1092"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1112"/> <source>Projets QElectroTech (*.qet);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <translation>QElectroTech 工程 (*.qet);;XML 文件 (*.xml);;所有文件 (*)</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1175"/> - <location filename="../sources/qetdiagrameditor.cpp" line="1191"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1195"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1211"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>无法打开文件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1177"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1197"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>您尝试打开的文件 %1 似乎不存在或不再存在。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1192"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1212"/> <source>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.</source> <translation>您尝试打开的文件似乎不可读。 因此不可能打开它。 请检查文件权限。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1206"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1226"/> <source>Ouverture du projet en lecture seule</source> <comment>message box title</comment> <translation>以只读方式打开工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1207"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1227"/> <source>Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule.</source> <translation>您尝试打开的工程似乎不可写。 因此它将以只读模式打开。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1231"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2118"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1251"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2173"/> <source>Échec de l'ouverture du projet</source> <comment>message box title</comment> <translation>无法打开工程</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1233"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1253"/> <source>Il semblerait que le fichier %1 ne soit pas un fichier projet QElectroTech. Il ne peut donc être ouvert.</source> <comment>message box content</comment> <translation>文件 %1 看起来不是 QElectroTech 工程文件。 因此无法打开。</translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1265"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1285"/> <source>%n description(s) de police écrite(s) dans un format étranger ou corrompu ont été restaurée(s). Elles seront réécrites dans un format stable au prochain enregistrement du projet.</source> <comment>message box content</comment> <translation> @@ -7933,7 +8282,7 @@ Options disponibles : </translation> </message> <message numerus="yes"> - <location filename="../sources/qetdiagrameditor.cpp" line="1273"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1293"/> <source>%n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes.</source> <comment>message box content</comment> <translation> @@ -7941,102 +8290,97 @@ Options disponibles : </translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1281"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1301"/> <source>Polices du projet</source> <comment>message box title</comment> <translation>项目字体</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1568"/> - <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> - <translation>双击完成形状,右击撤销最后一点</translation> - </message> - <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1635"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1690"/> <source>Suppression de borne impossible</source> <translation>不能删除端子</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1636"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1691"/> <source>La suppression ne peut être effectué car la selection possède une ou plusieurs bornes ponté et/ou appartenant à une borne à niveau multiple. Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les supprimer</source> <translation>无法执行删除操作,因为所选对象包含一个或多个已桥接或属于多层端子的端子。 请解除桥接或移除相关端子的层级,以便将其删除。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1875"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1930"/> <source>Éditer l'élement</source> <comment>edit element</comment> <translation>编辑元件</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1882"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1937"/> <source>Éditer le champ de texte</source> <comment>edit text field</comment> <translation>编辑文本框</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1889"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1944"/> <source>Éditer l'image</source> <comment>edit image</comment> <translation>编辑图片</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1896"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1951"/> <source>Éditer le conducteur</source> <comment>edit conductor</comment> <translation>编辑导线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="1904"/> + <location filename="../sources/qetdiagrameditor.cpp" line="1959"/> <source>Éditer l'objet sélectionné</source> <comment>edit selected item</comment> <translation>编辑所选对象</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2119"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2174"/> <source>Une erreur est survenue lors de l'ouverture du fichier %1.</source> <comment>message box content</comment> <translation>打开文件 %1 时出错。</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2166"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2221"/> <source>Active le projet « %1 »</source> <translation>激活工程《%1》</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2376"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2445"/> <source>Êtes-vous sûr de vouloir supprimer ce folio ?</source> <translation>你确定你要删除这个图页吗?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2381"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2450"/> <source>Supprimer les folios</source> <translation>删除图页</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2382"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2451"/> <source>Êtes-vous sûr de vouloir supprimer les %1 folios sélectionnés ?</source> <translation>你确定你要删除所选的图页 %1 吗?</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2399"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2468"/> <source>Supprimer %1 folios</source> <translation>删除 %1 个图纸</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2437"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2455"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2473"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2491"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2509"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2527"/> - <location filename="../sources/qetdiagrameditor.cpp" line="2545"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2506"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2524"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2542"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2560"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2578"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2596"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2614"/> <source>Déplacer les folios</source> <translation>移动图纸</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2613"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2682"/> <source>Erreur</source> <comment>message box title</comment> <translation>错误</translation> @@ -8285,17 +8629,17 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>编辑元件属性</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="981"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> <source>Annuler</source> <translation>撤销</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="982"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> <source>Refaire</source> <translation>恢复</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1033"/> <source>Profondeur</source> <comment>toolbar title</comment> <translation>图层</translation> @@ -8321,52 +8665,52 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>无缩放</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1064"/> <source>Ajouter une ligne</source> <translation>添加直线</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1052"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1065"/> <source>Ajouter un rectangle</source> <translation>添加矩形</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1053"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1066"/> <source>Ajouter une ellipse</source> <translation>添加椭圆</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1054"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1067"/> <source>Ajouter un polygone</source> <translation>添加多段线</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1055"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1068"/> <source>Ajouter du texte</source> <translation>添加文本</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1069"/> <source>Ajouter un arc de cercle</source> <translation>添加圆弧</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1070"/> <source>Ajouter une borne</source> <translation>添加端子</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1071"/> <source>Ajouter un champ texte dynamique</source> <translation>添加动态文本框</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1073"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1086"/> <source>Double-click pour terminer la forme, Click droit pour annuler le dernier point</source> <translation>双击完成形状,右击撤销最后一点</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1077"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1090"/> <source>Parties</source> <comment>toolbar title</comment> <translation>部件</translation> @@ -8392,66 +8736,66 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>粘贴自...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="452"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="453"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[修改]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="456"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="457"/> <source> [lecture seule]</source> <comment>window title tag</comment> <translation>[只读]</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1183"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1196"/> <source>Aucune modification</source> <translation>无修改</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1222"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1235"/> <source>Éditeur d'éléments</source> <comment>status bar message</comment> <translation>元件编辑器</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="537"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="674"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="538"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="675"/> <source>%n partie(s) sélectionnée(s).</source> <translation> <numerusform>选择了 %n 个部件。</numerusform> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="747"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> <source>Absence de borne</source> <comment>warning title</comment> <translation>缺少端子</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="748"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="749"/> <source><br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs.</source> <comment>warning description</comment> <translation><br>在没有端子的情况下,元件不能通过导线连接到其他元件。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="769"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> <source>Absence de borne</source> <translation>缺少端子</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="770"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="771"/> <source><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</source> <translation><br><b>错误</b> :<br>图页引用必须有一个端子。<br><b>解决方法</b> :<br>检查元件是否只有一个端子</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="803"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="804"/> <source>La vérification de cet élément a généré</source> <comment>message box content</comment> <translation>元件生成验证</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="806"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="807"/> <source> %n erreur(s)</source> <comment>errors</comment> <translation> @@ -8459,28 +8803,28 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="811"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="812"/> <source> et</source> <translation>和</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="823"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="824"/> <source><b>%1</b> : %2</source> <comment>warning title: warning description</comment> <translation><b>%1</b>:%2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="830"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="831"/> <source>Erreurs</source> <translation>错误</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="833"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="834"/> <source>Avertissements</source> <translation>警告</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="219"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="220"/> <source>Le fichier %1 n'existe pas.</source> <comment>message box content</comment> <translation>文件 %1 不存在。</translation> @@ -8492,167 +8836,167 @@ Déponter et/ou supprimer les niveaux des bornes concerné afin de pouvoir les s <translation>显示</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="225"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1530"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="226"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1543"/> <source>Impossible d'ouvrir le fichier %1.</source> <comment>message box content</comment> <translation>无法打开文件 %1。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="232"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1535"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="233"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1548"/> <source>Ce fichier n'est pas un document XML valide</source> <comment>message box content</comment> <translation>此文件不是有效的 XML 文档</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="238"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1541"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="239"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1554"/> <source>Erreur</source> <comment>toolbar title</comment> <translation>错误</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="249"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="319"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> <source>Édition en lecture seule</source> <comment>message box title</comment> <translation>只读编辑</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="250"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="320"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="251"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="321"/> <source>Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule.</source> <comment>message box content</comment> <translation>您没有修改此元件所需的权限。 因此它将以只读模式打开。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="281"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="345"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> <source>Erreur</source> <comment>message box title</comment> <translation>错误</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="282"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="283"/> <source>Impossible d'écrire dans ce fichier</source> <comment>message box content</comment> <translation>无法写入此文件</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="346"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="347"/> <source>Impossible d'enregistrer l'élément</source> <comment>message box content</comment> <translation>无法保存元件</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="499"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="500"/> <source>Trop de primitives, liste non générée: %1</source> <translation>无法生成图表,由于过多的要素:%1</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="790"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> <source>Nombre de bornes incorrect</source> <translation>端子数量错误</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="791"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="792"/> <source><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</source> <translation><br><b>错误</b>:<br>导线定义不能只包含1个端子。<br><b>解决方法</b>:<br>;检查元件是否只有一个端子</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="985"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="986"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="990"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="991"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="992"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="993"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="994"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="995"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="996"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="997"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="998"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="999"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1000"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1001"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1002"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1003"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1004"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1005"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1006"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1007"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1008"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1009"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1010"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1026"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1030"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1034"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1038"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1011"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1012"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1013"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1014"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1015"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1016"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1019"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1020"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1022"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1023"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1039"/> <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1043"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1044"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1045"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1046"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1047"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1051"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1056"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1057"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1058"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1059"/> <source>Éditeur d'élément</source> <translation>元件编辑器</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1074"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1087"/> <source>Ajouter un texte d'élément non éditable dans les schémas</source> <translation>在原理图中添加不可编辑的元件文本</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1075"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1088"/> <source>Ajouter un texte d'élément pouvant être édité dans les schémas</source> <translation>在原理图中添加可编辑的元件文本</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1217"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1230"/> <source>X: %1 Y: %2</source> <translation>X: %1 Y: %2</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1424"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> <source>Exporter en SVG</source> <comment>dialog title</comment> <translation>导出为 SVG</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1426"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1439"/> <source>Image SVG (*.svg)</source> <comment>filetypes allowed when exporting an element to SVG</comment> <translation>SVG 图像 (*.svg)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1437"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1450"/> <source>Échec de l'export</source> <translation>导出失败</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1438"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1451"/> <source>Impossible d'écrire dans le fichier « %1 ».</source> <translation>无法写入文件“%1”。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>Avertissement</source> <translation>警告</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1622"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1635"/> <source>L'import d'un dxf volumineux peut prendre du temps veuillez patienter durant l'import...</source> <translation>导入大型 dxf 可能需要时间 正在导入,请稍候...</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1641"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1654"/> <source>Importer un élément à redimensionner</source> <translation>导入元件并调整尺寸</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1643"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1656"/> <source>Éléments QElectroTech (*.elmt)</source> <translation>QElectroTech元件 (*.elmt)</translation> </message> <message numerus="yes"> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="813"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="814"/> <source> %n avertissement(s)</source> <comment>warnings</comment> <translation> @@ -8660,99 +9004,99 @@ veuillez patienter durant l'import...</source> </translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="873"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="874"/> <source>Impossible d'ouvrir le fichier</source> <comment>message box title</comment> <translation>无法打开文件</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="875"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="876"/> <source>Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus.</source> <translation>您尝试打开的文件 %1 似乎不存在或不再存在。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1487"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1500"/> <source>Recharger l'élément</source> <comment>dialog title</comment> <translation>重新加载元件</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1488"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1501"/> <source>Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ?</source> <comment>dialog content</comment> <translation>您已对此元件进行更改。 如果重新加载它,这些更改将会丢失。 您确定要重新加载该元件吗?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>Echec de l'enregistrement</source> <translation>保存失败</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1295"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1324"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1390"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1308"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1337"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1403"/> <source>L'enregistrement à échoué, les conditions requises ne sont pas valides</source> <translation>保存失败, 不满足所需条件</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1363"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1376"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>另存为</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1365"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1378"/> <source>Éléments QElectroTech (*.elmt)</source> <comment>filetypes allowed when saving an element file</comment> <translation>QElectroTech元件 (*.elmt)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="912"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="913"/> <source>Enregistrer l'élément en cours ?</source> <comment>dialog title</comment> <translation>保存当前元件?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="914"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="915"/> <source>Voulez-vous enregistrer l'élément %1 ?</source> <comment>dialog content - %1 is an element name</comment> <translation>您要保存元件 %1 吗?</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="430"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="431"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>打开文件</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="432"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="433"/> <source>Éléments QElectroTech (*.elmt);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening an element file</comment> <translation>QElectroTech元件 (*.elmt);;XML 文件 (*.xml);;所有文件 (*)</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="296"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="302"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1556"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1562"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1569"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1575"/> <source>Élément inexistant.</source> <comment>message box title</comment> <translation>元件不存在。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="303"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1563"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="304"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1576"/> <source>L'élément n'existe pas.</source> <comment>message box content</comment> <translation>该元件不存在。</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="297"/> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1557"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="298"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1570"/> <source>Le chemin virtuel choisi ne correspond pas à un élément.</source> <comment>message box content</comment> <translation>所选的虚拟路径不对应于元件。</translation> @@ -8900,42 +9244,42 @@ les conditions requises ne sont pas valides</source> <context> <name>QETProject</name> <message> - <location filename="../sources/qetproject.cpp" line="434"/> + <location filename="../sources/qetproject.cpp" line="458"/> <source>Projet « %1 : %2»</source> <comment>displayed title for a ProjectView - %1 is the project title, -%2 is the project path</comment> <translation>工程《%1 : %2》</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="441"/> + <location filename="../sources/qetproject.cpp" line="465"/> <source>Projet %1</source> <comment>displayed title for a title-less project - %1 is the file name</comment> <translation>工程 %1</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="448"/> + <location filename="../sources/qetproject.cpp" line="472"/> <source>Projet sans titre</source> <comment>displayed title for a project-less, file-less project</comment> <translation>未命名工程</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="457"/> + <location filename="../sources/qetproject.cpp" line="481"/> <source>%1 [lecture seule]</source> <comment>displayed title for a read-only project - %1 is a displayable title</comment> <translation>%1 [只读]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="465"/> + <location filename="../sources/qetproject.cpp" line="489"/> <source>%1 [modifié]</source> <comment>displayed title for a modified project - %1 is a displayable title</comment> <translation>%1 [已修改]</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1232"/> + <location filename="../sources/qetproject.cpp" line="1256"/> <source>Système de contacts modifié</source> <translation>触点系统已修改</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1233"/> + <location filename="../sources/qetproject.cpp" line="1257"/> <source>Le nouvel élément définit des groupes de contacts esclaves. Les éléments esclaves existants ne seront pas automatiquement assignés. Vous devrez relier manuellement les esclaves et assigner les groupes de contacts. @@ -8946,19 +9290,19 @@ Voulez-vous continuer ?</source> 是否继续?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1321"/> + <location filename="../sources/qetproject.cpp" line="1345"/> <source>Une erreur s'est produite durant l'intégration du modèle.</source> <comment>error message</comment> <translation>模板集成期间发生错误。</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1472"/> + <location filename="../sources/qetproject.cpp" line="1496"/> <source>Avertissement</source> <comment>message box title</comment> <translation>警告</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1474"/> + <location filename="../sources/qetproject.cpp" line="1498"/> <source>Ce document semble avoir été enregistré avec une version %1 qui est ultérieure à votre version ! Vous utilisez actuellement QElectroTech en version %2</source> @@ -8967,7 +9311,7 @@ Vous utilisez actuellement QElectroTech en version %2</source> 您当前使用的是版本 %2 的 QElectroTech</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1479"/> + <location filename="../sources/qetproject.cpp" line="1503"/> <source>. Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ?</source> @@ -8976,32 +9320,32 @@ Que désirez vous faire ?</source> 你想如何处理?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1499"/> + <location filename="../sources/qetproject.cpp" line="1523"/> <source>Avertissement </source> <comment>message box title</comment> <translation>警告 </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1500"/> + <location filename="../sources/qetproject.cpp" line="1524"/> <source>Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. </source> <translation>您尝试打开的工程与您的 QElectroTech %1 版本部分兼容。 </translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1503"/> + <location filename="../sources/qetproject.cpp" line="1527"/> <source>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 ?</source> <translation>为了使其完全兼容,请使用 QElectroTech 的 0.8 或 0.80 版本打开同一个工程并保存该工程,然后使用此版本再次打开它。 你想如何处理?</translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1600"/> + <location filename="../sources/qetproject.cpp" line="1624"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p></source> <translation><p align="center"><b>正在打开当前工程...</b><br/>正在创建图页</p></translation> </message> <message> - <location filename="../sources/qetproject.cpp" line="1642"/> + <location filename="../sources/qetproject.cpp" line="1666"/> <source><p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p></source> <translation><p align="center"><b>打开当前工程...</b><br/>设置交叉引用</p></translation> </message> @@ -9039,127 +9383,126 @@ Que désirez vous faire ?</source> <translation>要复制此模板,请为其副本输入所需的名称</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="368"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> <source>&Nouveau</source> <comment>menu entry</comment> <translation>新建(&N)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="369"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> <source>&Ouvrir</source> <comment>menu entry</comment> <translation>打开(&O)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="370"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> <source>Ouvrir depuis un fichier</source> <comment>menu entry</comment> <translation>从文件打开</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="371"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> <source>&Enregistrer</source> <comment>menu entry</comment> <translation>保存(&S)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="372"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> <source>Enregistrer sous</source> <comment>menu entry</comment> <translation>另存为</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="373"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> <source>Enregistrer vers un fichier</source> <comment>menu entry</comment> <translation>保存到文件</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="374"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="375"/> <source>&Quitter</source> <comment>menu entry</comment> <translation>退出(&Q)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="377"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> <source>Co&uper</source> <comment>menu entry</comment> <translation>剪切(&X)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="378"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> <source>Cop&ier</source> <comment>menu entry</comment> <translation>复制(&C)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="379"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> <source>C&oller</source> <comment>menu entry</comment> <translation>粘贴(&V)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="380"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> <source>Gérer les logos</source> <comment>menu entry</comment> <translation>管理标识</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="381"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> <source>Éditer les informations complémentaires</source> <comment>menu entry</comment> <translation>编辑附加信息</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="382"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> <source>Zoom avant</source> <comment>menu entry</comment> <translation>放大</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="383"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> <source>Zoom arrière</source> <comment>menu entry</comment> <translation>缩小</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="384"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> <source>Zoom adapté</source> <comment>menu entry</comment> <translation>自适应缩放</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="385"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> <source>Pas de zoom</source> <comment>menu entry</comment> <translation>无缩放</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="386"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> <source>Ajouter une &ligne</source> <comment>menu entry</comment> <translation>添加行(&H)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="387"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> <source>Ajouter une &colonne</source> <comment>menu entry</comment> <translation>添加列(&L)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="388"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> <source>&Fusionner les cellules</source> <comment>menu entry</comment> <translation>合并单元格(&M)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="389"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="390"/> <source>&Séparer les cellules</source> <comment>menu entry</comment> <translation>拆分单元格(&S)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="394"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="395"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="396"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="397"/> @@ -9178,156 +9521,157 @@ Que désirez vous faire ?</source> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="410"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="411"/> <location filename="../sources/titleblock/qettemplateeditor.cpp" line="412"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="413"/> <source>Éditeur de cartouche</source> <translation>标题栏模板编辑器</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="441"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> <source>&Fichier</source> <comment>menu title</comment> <translation>文件(&F)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="442"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> <source>&Édition</source> <comment>menu title</comment> <translation>编辑(&E)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="443"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="444"/> <source>Afficha&ge</source> <comment>menu title</comment> <translation>显示(&D)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="483"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="484"/> <source>Outils</source> <comment>toolbar title</comment> <translation>工具</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="491"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="492"/> <source>Édition</source> <comment>toolbar title</comment> <translation>编辑</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="500"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="501"/> <source>Affichage</source> <comment>toolbar title</comment> <translation>显示</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="519"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="520"/> <source>Aucune modification</source> <comment>label displayed in the undo list when empty</comment> <translation>撤销修改</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="521"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="522"/> <source>Annulations</source> <comment>dock title</comment> <translation>撤销</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="543"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="544"/> <source>Propriétés de la cellule</source> <comment>dock title</comment> <translation>单元格属性</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="621"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="622"/> <source>[Modifié]</source> <comment>window title tag</comment> <translation>[修改]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="624"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="625"/> <source>[Lecture seule]</source> <comment>window title tag</comment> <translation>[只读]</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="627"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="628"/> <source>%1 %2</source> <comment>part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag</comment> <translation>%1 %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="717"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="733"/> <source>QElectroTech - Éditeur de modèle de cartouche</source> <comment>titleblock template editor: base window title</comment> <translation>QElectroTech - 标题栏模板编辑器</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="732"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="748"/> <source>%1 - %2</source> <comment>window title: %1 is the base window title, %2 is a template name</comment> <translation>%1 - %2</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="785"/> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="903"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="801"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="919"/> <source>Erreur</source> <comment>message box title</comment> <translation>错误</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="786"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="802"/> <source>Impossible d'enregistrer le modèle « %1 ».</source> <comment>message box content - %1 is a title block template name</comment> <translation>无法保存模板“%1”。</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="824"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="840"/> <source>Ouvrir un modèle</source> <comment>File > open dialog window title</comment> <translation>打开模板</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="846"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="862"/> <source>Ouvrir un fichier</source> <comment>dialog title</comment> <translation>打开文件</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="848"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="864"/> <source>Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*)</source> <comment>filetypes allowed when opening a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech 标题栏模板(*%1);;XML文件 (*.xml);;所有文件 (*)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="890"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="906"/> <source>Enregistrer le modèle sous</source> <comment>dialog window title</comment> <translation>将模板另存为</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="904"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="920"/> <source>Le nom « %1 » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |</source> <comment>message box content - %1 is the rejected template name</comment> - <translation>名称“%1”无效:不得包含以下字符:\ / : * ? " < > |</translation> + <translation>名称“%1”无效:不得包含以下字符:\ / : * ? " < > |</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="927"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="943"/> <source>Enregistrer sous</source> <comment>dialog title</comment> <translation>另存为</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="929"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="945"/> <source>Modèles de cartouches QElectroTech (*%1)</source> <comment>filetypes allowed when saving a title block template file - %1 is the .titleblock extension</comment> <translation>QElectroTech 标题栏模板 (*%1)</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1037"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1053"/> <source>Éditer les informations complémentaires</source> <comment>window title</comment> <translation>编辑附加信息</translation> </message> <message> - <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1041"/> + <location filename="../sources/titleblock/qettemplateeditor.cpp" line="1057"/> <source>Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile.</source> <translation>您可以使用此输入框来说明标题栏的作者、许可协议或您认为有用的任何信息。</translation> </message> @@ -9442,18 +9786,18 @@ Que désirez vous faire ?</source> <translation>日期</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Selectionner une image...</source> <translation>选择图片...</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="160"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="278"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation>图片文件 (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/conductornumexport.cpp" line="66"/> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="187"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="198"/> <location filename="../sources/diagramevent/diagrameventaddpdf.cpp" line="221"/> @@ -9462,7 +9806,7 @@ Que désirez vous faire ?</source> <translation>错误</translation> </message> <message> - <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="167"/> + <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="285"/> <source>Impossible de charger l'image.</source> <translation>无法加载图片。</translation> </message> @@ -10349,24 +10693,24 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="209"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1271"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1375"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1833"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1401"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> <source>Type</source> <translation>类型</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="210"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1272"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1376"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1834"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1402"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> <source>Adresse</source> <translation>地址</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="212"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1274"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1378"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1836"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1404"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1838"/> <location filename="../sources/qetinformation.cpp" line="261"/> <source>Commentaire</source> <translation>注释</translation> @@ -10374,16 +10718,16 @@ Voulez-vous la remplacer ?</source> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="213"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1275"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1379"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1405"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1839"/> <source>Réf. croisée</source> <translation>交叉引用</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.cpp" line="211"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="1273"/> - <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1377"/> - <location filename="../sources/qetgraphicsitem/element.cpp" line="1835"/> + <location filename="../sources/qetgraphicsitem/crossrefitem.cpp" line="1403"/> + <location filename="../sources/qetgraphicsitem/element.cpp" line="1837"/> <location filename="../sources/qetinformation.cpp" line="262"/> <location filename="../sources/qetinformation.cpp" line="272"/> <source>Fonction</source> @@ -10680,22 +11024,22 @@ Voulez-vous la remplacer ?</source> <translation>生成导线</translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2754"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2823"/> <source>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></source> <translation>要安装插件 qet_tb_generator<br>请访问:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>需要python 3.5或更高版本。<br><B><U>首此在Windows上安装</B></U><br>1. 如果需要,请安装 python 3.5 或更高版本<br>访问:<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> 在 Windows 上更新</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>用户可以在终端中启动此目录的脚本<br>C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2774"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2843"/> <source>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></source> <translation>要安装插件 qet_tb_generator<br>请访问:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U>首此在macOSX上安装:</B></U><br>1. 如果需要,仅安装python 3.11 捆绑包即可,<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 运行 Profile.command 脚本<br>因为程序使用硬编码路径来定位 qet-tb-generator 插件 <br> 请访问:<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>howto</a><br>2. pip3 install qet_tb_generator<br><B><U> 在 macOSX 上更新:</B></U><br> pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2793"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2862"/> <source>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></source> <translation>要安装插件 qet_tb_generator<br>请访问:<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>需要 python 3.5 或更高版本。<br><br><B><U>首次在Linux 上安装</B></U><br>1. 检查您是否已安装 pip3:pip3 --version<br>如果未安装:sudo apt-get install python3-pip<br>2. 安装程序:sudo pip3 install qet_tb_generator<br>3. 运行程序:qet_tb_generator<br><br><B><U>在 Linux 上更新</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br></translation> </message> <message> - <location filename="../sources/qetdiagrameditor.cpp" line="2813"/> + <location filename="../sources/qetdiagrameditor.cpp" line="2882"/> <source>Error launching qet_tb_generator plugin</source> <translation>启动 qet_tb_generator 插件时出错</translation> </message> @@ -10723,7 +11067,7 @@ Voulez-vous la remplacer ?</source> <location filename="../sources/SearchAndReplace/ui/searchandreplacewidget.cpp" line="425"/> <location filename="../sources/conductorproperties.cpp" line="819"/> <location filename="../sources/factory/elementpicturefactory.cpp" line="627"/> - <location filename="../sources/qetapp.cpp" line="2459"/> + <location filename="../sources/qetapp.cpp" line="2461"/> <location filename="../sources/titleblock/templatelocation.cpp" line="114"/> <source>this is an error in the code</source> <translation>代码中存在错误</translation> @@ -10953,7 +11297,7 @@ Voulez-vous la remplacer ?</source> <translation>打开一个元件</translation> </message> <message> - <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1615"/> + <location filename="../sources/editor/ui/qetelementeditor.cpp" line="1628"/> <source>Importer un fichier dxf</source> <translation>导入 dxf 文件</translation> </message> @@ -11101,6 +11445,11 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <source>Impossible de rendre la page PDF.</source> <translation>无法渲染 PDF 页面。</translation> </message> + <message> + <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> + <source>Transformer %1</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>QTextOrientationWidget</name> @@ -11147,55 +11496,306 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <context> <name>QetShapeItem</name> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="995"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> <source>une shape</source> <translation>图形</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="991"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2979"/> <source>une ligne</source> <translation>直线</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="58"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="71"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1067"/> <source>Ajouter un point</source> <translation>添加点</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="61"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="74"/> <source>Supprimer ce point</source> <translation>删除该点</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="667"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> + <source>Déformer une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> + <source>Nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> + <source>Lisse</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> + <source>Symétrique</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> + <source>Anguleux</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> + <source>Supprimer le nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> + <source>Convertir en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> + <source>Miroir horizontal</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> + <source>Miroir vertical</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> + <source>Propriétés...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> + <source>Taille</source> + <translation type="unfinished">字号</translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> + <source>Coins arrondis</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> + <source>Édition des nœuds</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> + <source>Rotation/Inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> + <source>Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> + <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> + <source> ; point turquoise : arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> + <source>Glisser une extrémité : la déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> + <source>Glisser un point : le déplacer</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> + <source>Glisser le point violet : arrondir les coins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> + <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> + <source>une extrémité</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> + <source>un coin</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> + <source>un point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> + <source>Glisser %1 : rotation (Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> + <source> ; un bord : inclinaison</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> + <source> ; point rouge : glisser pour repositionner le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> + <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> + <source> — Cliquer : mode %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> + <source>Glisser : déplacer ce point</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> + <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> + <source>, Alt = détacher en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> + <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> + <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> + <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> + <source>Glisser : arrondir les coins (Ctrl = position libre)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> + <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> + <source>Glisser : déplacer le point (Ctrl = position libre</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> + <source>, Alt = créer des poignées</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> + <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> <source>Ajouter un point à un polygone</source> <translation>向多段线添加一个点</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="701"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1728"/> <source>Supprimer un point d'un polygone</source> <translation>从多段线删除一个点</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="834"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> + <source>Ajouter un point à une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> + <source>Supprimer un point d'une courbe</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> + <source>Convertir %1 en polyligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> + <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir horizontal de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> + <source>Miroir vertical de %1</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> + <source>Modifier le type d'un nœud</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> + <source>Deplacer le centre de rotation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> <source>Modifier %1</source> <translation>修改 %1</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="992"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2980"/> <source>un rectangle</source> <translation>矩形</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="993"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>une éllipse</source> <translation>椭圆</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="994"/> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> + <source>un arc</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> <source>une polyligne</source> <translation>多段线</translation> </message> + <message> + <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> + <source>une courbe</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>RectangleEditor</name> @@ -12125,150 +12725,177 @@ Les autres champs ne sont pas utilisés.</source> <translation>窗体</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="92"/> <source>Trait</source> <translation>线条</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="33"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> <source>Épaisseur</source> <translation>线宽</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="85"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="157"/> <source>Normal</source> <translation>实线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="90"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="162"/> <source>Tiret</source> <translation>短划线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="95"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="167"/> <source>Pointillé</source> <translation>虚线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="100"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="172"/> <source>Traits et points</source> <translation>点划线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="105"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="177"/> <source>Traits points points</source> <translation>双点划线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="110"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="182"/> <source>Tiret custom</source> <translation>宽划线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="98"/> <source>Type</source> <translation>类型</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="40"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="213"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="112"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="285"/> <source>Couleur</source> <translation>颜色</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="121"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> <source>Remplissage</source> <translation>填充</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="206"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="278"/> <source>Style</source> <translation>样式</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="128"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="200"/> <source>Aucun</source> <translation>无</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="133"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> + <source>Géométrie</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Largeur</source> + <translation type="unfinished">宽度</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Hauteur</source> + <translation type="unfinished">高度</translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> + <source>Angle</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> + <source> °</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> <source>Plein</source> <translation>实心</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="138"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="210"/> <source>Densité 1</source> <translation>密度 1</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="143"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="215"/> <source>Densité 2</source> <translation>密度 2</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="148"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="220"/> <source>Densité 3</source> <translation>密度 3</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="153"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="225"/> <source>Densité 4</source> <translation>密度 4</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="158"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="230"/> <source>Densité 5</source> <translation>密度 5</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="163"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="235"/> <source>Densité 6</source> <translation>密度 6</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="168"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="240"/> <source>Densité 7</source> <translation>密度 7</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="173"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="245"/> <source>Horizontal</source> <translation>水平线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="178"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="250"/> <source>Vertical</source> <translation>垂直线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="183"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="255"/> <source>Croix</source> <translation>十字线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="188"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="260"/> <source>Diagonal arrière</source> <translation>副对角线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="193"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="265"/> <source>Diagonal avant</source> <translation>主对角线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="198"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="270"/> <source>Diagonal en croix</source> <translation>对角线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="226"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="298"/> <source>Verrouiller la position</source> <translation>锁定位置</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="233"/> - <source>Polygone fermé</source> - <translation>闭合多段线</translation> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> + <source>Forme fermée</source> + <translation type="unfinished"></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12277,30 +12904,60 @@ Les autres champs ne sont pas utilisés.</source> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> + <source>Modifier la longueur d'une ligne</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> + <source>Modifier la taille d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> + <source>Modifier l'angle d'une forme</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> <source>Modifier le trait d'une forme</source> <translation>修改图形的线条</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="199"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="252"/> <source>Modifier le remplissage d'une forme</source> <translation>修改图形的填充</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="211"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="264"/> <source>Fermer le polygone</source> <translation>闭合多段线</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="267"/> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="299"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="320"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="352"/> <source>Modifier une forme simple</source> <translation>修改一个简单图形</translation> </message> <message> - <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="311"/> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="364"/> <source>Modifier les propriétés d'une forme simple</source> <translation>修改简单图形的属性</translation> </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> + <source>Longueur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> + <source>Rayon X</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> + <source>Rayon Y</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ShortcutsConfigPage</name> From f02b576cb85ee72c3e2e706c5e43b641b6d518da Mon Sep 17 00:00:00 2001 From: Laurent Trinques <scorpio@qelectrotech.org> Date: Sat, 5 Sep 2026 20:47:59 +0200 Subject: [PATCH 32/95] Update FR translations files --- lang/qet_fr.qm | Bin 208297 -> 218563 bytes lang/qet_fr.ts | 268 ++++++++++++++++++++++++------------------------- 2 files changed, 134 insertions(+), 134 deletions(-) diff --git a/lang/qet_fr.qm b/lang/qet_fr.qm index 93a6a38be575aa8e396dfc69b6b24fac137f144b..08c33cf05d295335b56c8f76f36dea70d6592534 100644 GIT binary patch delta 27758 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 delta 21199 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 diff --git a/lang/qet_fr.ts b/lang/qet_fr.ts index 0bac5c1a0..3247af97c 100644 --- a/lang/qet_fr.ts +++ b/lang/qet_fr.ts @@ -850,7 +850,7 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> <source>Cliquez pour choisir une couleur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -1424,7 +1424,7 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <message> <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -1432,7 +1432,7 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <message> <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -1440,37 +1440,37 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -1478,72 +1478,72 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> <source>redimensionner</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> <source>pivoter/incliner</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> <source>Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> <source> -- %1 : mode %2</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> <source>Cliquer</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> <source>Glisser : pivoter (Maj = par pas de 15°)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> <source>Glisser : incliner (Maj = par pas de 15°)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> <source>Glisser : déplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> <source>Déplacer le centre de rotation d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> <source>Modifier une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> <source>Restaurer les proportions d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> @@ -1553,82 +1553,82 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> <source>Remplacer l'image...</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> <source>Couleur transparente...</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> <source>Rogner...</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> <source>Miroir horizontal</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> <source>Miroir vertical</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> <source>Restaurer les proportions</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Propriétés...</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> <source>Selectionner une image...</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> <source>Erreur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> <source>Impossible de charger l'image.</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> <source>Remplacer une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> <source>Miroir horizontal d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> <source>Miroir vertical d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> <source>Définir une couleur transparente</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> <source>Rogner une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -2943,7 +2943,7 @@ Le nom affiché de l'élément se modifie séparément dans les propriété <message> <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> <source>Verrouiller la position</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> @@ -4976,22 +4976,22 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <message> <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> <source>Rogner l'image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> <source>Réinitialiser</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> <source>Revenir à l'image complète, sans rognage</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -5004,51 +5004,51 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> <source>Largeur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> <source> %</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> <source>Hauteur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> <source>Restaurer les proportions</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> <source>Angle</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> <source> °</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> <source>Inclinaison X</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> <source>Inclinaison Y</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> @@ -5058,28 +5058,28 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> <source>Modifier la largeur d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> <source>Modifier la hauteur d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> <source>Modifier l'angle d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> <source>Modifier l'inclinaison d'une image</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -5087,37 +5087,37 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> <source>Couleur transparente</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> <source>Image source</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Aperçu</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> <source>Tolérance</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> <source>Cliquez sur l'image pour choisir une couleur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -7994,7 +7994,7 @@ Options disponibles : <message> <location filename="../sources/qetdiagrameditor.cpp" line="745"/> <source>Ajouter une courbe</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetdiagrameditor.cpp" line="746"/> @@ -8039,7 +8039,7 @@ Options disponibles : <message> <location filename="../sources/qetdiagrameditor.cpp" line="757"/> <source>Ajoute une courbe de Bézier sur le folio actuel</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetdiagrameditor.cpp" line="758"/> @@ -11380,7 +11380,7 @@ Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper da <message> <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> <source>Transformer %1</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> @@ -11439,202 +11439,202 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> <source>Déformer une courbe</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> <source>Nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> <source>Lisse</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> <source>Symétrique</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> <source>Anguleux</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> <source>Supprimer le nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> <source>Convertir en polyligne</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> <source>Miroir horizontal</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> <source>Miroir vertical</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> <source>Propriétés...</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> <source>Taille</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> <source>Coins arrondis</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> <source>Édition des nœuds</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> <source>Rotation/Inclinaison</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> <source>Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> <source> ; point turquoise : arc</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> <source>Glisser une extrémité : la déplacer</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> <source>Glisser un point : le déplacer</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> <source>Glisser le point violet : arrondir les coins</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> <source>une extrémité</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> <source>un coin</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> <source>un point</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> <source>Glisser %1 : rotation (Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> <source> ; un bord : inclinaison</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> <source> ; point rouge : glisser pour repositionner le centre de rotation</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> <source> — Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> <source>Glisser : déplacer ce point</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> <source>, Alt = détacher en polyligne</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> <source>Glisser : arrondir les coins (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> <source>Glisser : déplacer le point (Ctrl = position libre</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> <source>, Alt = créer des poignées</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> @@ -11649,42 +11649,42 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> <source>Ajouter un point à une courbe</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> <source>Supprimer un point d'une courbe</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> <source>Convertir %1 en polyligne</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> <source>Miroir horizontal de %1</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> <source>Miroir vertical de %1</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> <source>Modifier le type d'un nœud</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> <source>Deplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> @@ -11709,7 +11709,7 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>un arc</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> @@ -11719,7 +11719,7 @@ Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'af <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> <source>une courbe</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> @@ -12668,29 +12668,29 @@ Les autres champs ne sont pas utilisés.</source> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> <source>Géométrie</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> <source>Largeur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> <source>Hauteur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> <source>Angle</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> <source> °</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> @@ -12770,22 +12770,22 @@ Les autres champs ne sont pas utilisés.</source> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> <source>Forme fermée</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> <source>Modifier la longueur d'une ligne</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> <source>Modifier la taille d'une forme</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> <source>Modifier l'angle d'une forme</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> @@ -12816,17 +12816,17 @@ Les autres champs ne sont pas utilisés.</source> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> <source>Longueur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> <source>Rayon X</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> <source>Rayon Y</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -15203,17 +15203,17 @@ Les autres champs ne sont pas utilisés.</source> <message> <location filename="../sources/ui/terminalnumberingdialog.ui" line="101"/> <source>Numéroter également les lettres</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/terminalnumberingdialog.ui" line="118"/> <source>Borniers</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/terminalnumberingdialog.ui" line="124"/> <source>Décochez les borniers dont la numérotation doit être exclue</source> - <translation type="unfinished"></translation> + <translation></translation> </message> </context> <context> From 7741bb33b21da53844b35f6ca843df61e462d288 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sat, 5 Sep 2026 19:27:17 +0200 Subject: [PATCH 33/95] Use downscaled image for image transparency window to improve resposiveness. --- sources/ui/imagetransparentcolordialog.cpp | 24 ++++++++++++++-------- sources/ui/imagetransparentcolordialog.h | 13 ++++++++++++ 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/sources/ui/imagetransparentcolordialog.cpp b/sources/ui/imagetransparentcolordialog.cpp index 62bcf8813..0cc45d335 100644 --- a/sources/ui/imagetransparentcolordialog.cpp +++ b/sources/ui/imagetransparentcolordialog.cpp @@ -48,10 +48,10 @@ ClickableImageLabel::ClickableImageLabel(const QImage &sourceImage, QWidget *par const qreal scaleH = qreal(MAX_DISPLAY_SIZE) / m_source.height(); m_displayScale = qMin(qreal(1.0), qMin(scaleW, scaleH)); // never upscale a small image, only ever shrink a large one - const QImage displayImage = (m_displayScale < 1.0) + m_displayImage = (m_displayScale < 1.0) ? m_source.scaled(m_source.size() * m_displayScale, Qt::KeepAspectRatio, Qt::SmoothTransformation) : m_source; - setPixmap(QPixmap::fromImage(displayImage)); + setPixmap(QPixmap::fromImage(m_displayImage)); setCursor(Qt::CrossCursor); setToolTip(tr("Cliquez pour choisir une couleur")); } @@ -101,6 +101,7 @@ ImageTransparentColorDialog::ImageTransparentColorDialog(const QPixmap &basePixm setWindowTitle(tr("Couleur transparente")); m_sourceLabel = new ClickableImageLabel(m_sourceImage, this); + m_previewSourceImage = m_sourceLabel->displayImage(); m_previewLabel = new QLabel(this); m_hintLabel = new QLabel(this); @@ -232,15 +233,22 @@ void ImageTransparentColorDialog::onToleranceChanged(int value) /** @brief ImageTransparentColorDialog::updatePreview Recomputes the checkerboard-backed preview against the current set - of picked colours and the shared tolerance. Always runs against - m_sourceImage (the original, full-resolution image), not any - already-keyed result -- so adjusting the tolerance, or adding or - removing a colour, re-evaluates every picked colour from scratch - each time rather than compounding successive passes. + of picked colours and the shared tolerance. Runs against + m_previewSourceImage (the same downsampled copy ClickableImageLabel + already computed for its own display, not the full-resolution + m_sourceImage) -- this fires on every tolerance slider tick, not + just on release, and a full-resolution O(width*height*colours) pass + per tick was visibly laggy on a large source image. resultPixmap(), + below, still computes the final, committed result at full + resolution -- only this live preview is downsampled. Always + re-evaluates every picked colour from scratch against + m_previewSourceImage, not any already-keyed result, so adjusting + the tolerance or adding/removing a colour never compounds successive + passes. */ void ImageTransparentColorDialog::updatePreview() { - const QImage keyed = applyColorKey(m_sourceImage, m_pickedColors, m_tolerance); + const QImage keyed = applyColorKey(m_previewSourceImage, m_pickedColors, m_tolerance); m_previewLabel->setPixmap(onCheckerboard(keyed)); } diff --git a/sources/ui/imagetransparentcolordialog.h b/sources/ui/imagetransparentcolordialog.h index 691983057..c6b7d11a3 100644 --- a/sources/ui/imagetransparentcolordialog.h +++ b/sources/ui/imagetransparentcolordialog.h @@ -45,6 +45,17 @@ class ClickableImageLabel : public QLabel public: explicit ClickableImageLabel(const QImage &sourceImage, QWidget *parent = nullptr); + /// The same downsampled image already computed for display -- + /// reused as the live-preview source so a tolerance drag runs + /// its per-tick colour-key pass against a small image instead + /// of the full-resolution one, which on a large source (a + /// scanned schematic background, several Mpx) made every + /// intermediate slider tick visibly lag. resultPixmap() still + /// computes the final, committed result from the true + /// full-resolution source -- only the live preview is + /// downsampled. + QImage displayImage() const { return m_displayImage; } + signals: void colorPicked(const QColor &color); @@ -53,6 +64,7 @@ class ClickableImageLabel : public QLabel private: QImage m_source; + QImage m_displayImage; qreal m_displayScale = 1.0; }; @@ -119,6 +131,7 @@ class ImageTransparentColorDialog : public QDialog static QPixmap onCheckerboard(const QImage &image); QImage m_sourceImage; + QImage m_previewSourceImage; // downsampled -- see ClickableImageLabel::displayImage()'s comment for why QList<QColor> m_pickedColors; int m_tolerance = 10; From b395527915c1f2a07c9ad6786cb8b6c4f376fc09 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sat, 5 Sep 2026 20:42:06 +0200 Subject: [PATCH 34/95] Add transparency to each color for image transparency. --- sources/qetgraphicsitem/diagramimageitem.cpp | 62 +++--- sources/qetgraphicsitem/diagramimageitem.h | 27 +-- sources/ui/imagetransparentcolordialog.cpp | 194 +++++++++++-------- sources/ui/imagetransparentcolordialog.h | 89 +++++---- 4 files changed, 217 insertions(+), 155 deletions(-) diff --git a/sources/qetgraphicsitem/diagramimageitem.cpp b/sources/qetgraphicsitem/diagramimageitem.cpp index f6fe4bf72..d23bab9e2 100644 --- a/sources/qetgraphicsitem/diagramimageitem.cpp +++ b/sources/qetgraphicsitem/diagramimageitem.cpp @@ -1064,23 +1064,24 @@ QVariant DiagramImageItem::itemChange(GraphicsItemChange change, const QVariant @brief DiagramImageItem::computeDisplayPixmap Re-derives what pixmap_ should be from first principles: crop the true original down to the chosen region, then colour-key whichever - colours have been picked out of it. Used whenever crop() or - setTransparentColor() changes one of those two independently, so - the other's effect is correctly re-applied on top rather than lost - or compounded -- cropping after colours were already picked has to - still show them keyed out; picking colours after a crop has to only - ever consider what's still actually part of the image. + colours have been picked out of it, each at its own tolerance. Used + whenever crop() or setTransparentColor() changes one of those two + independently, so the other's effect is correctly re-applied on top + rather than lost or compounded -- cropping after colours were + already picked has to still show them keyed out; picking colours + after a crop has to only ever consider what's still actually part + of the image. @param base the true, uncropped original @param cropRect the region of base to keep, in base's own coordinates - @param colors colours to key transparent within the cropped region - @param tolerance how loosely to match those colours, 0-100 + @param colors colours (each with its own tolerance) to key transparent within the cropped region */ -QPixmap DiagramImageItem::computeDisplayPixmap(const QPixmap &base, const QRect &cropRect, const QList<QColor> &colors, int tolerance) +QPixmap DiagramImageItem::computeDisplayPixmap(const QPixmap &base, const QRect &cropRect, + const QList<ImageTransparentColorDialog::PickedColor> &colors) { const QPixmap cropped = cropRect == base.rect() ? base : base.copy(cropRect); if (colors.isEmpty()) return cropped; - return QPixmap::fromImage(ImageTransparentColorDialog::applyColorKey(cropped.toImage(), colors, tolerance)); + return QPixmap::fromImage(ImageTransparentColorDialog::applyColorKey(cropped.toImage(), colors)); } /** @@ -1142,19 +1143,25 @@ bool DiagramImageItem::fromXml(const QDomElement &e) m_base_pixmap = pixmap; m_crop_rect = pixmap.rect(); m_transparent_colors.clear(); - m_transparent_tolerance = 10; const QDomElement colorsElement = e.firstChildElement("transparent_colors"); bool hasColors = !colorsElement.isNull(); if (hasColors) { - m_transparent_tolerance = colorsElement.attribute("tolerance", "10").toInt(); + // Files saved before per-colour tolerance existed wrote a + // single value on the wrapper element itself, shared by every + // colour -- kept here purely as the fallback default for a + // <color> that doesn't carry its own attribute, which for + // those old files is every one of them, exactly reproducing + // what they used to do (one tolerance applied to all of them). + const int wrapperTolerance = colorsElement.attribute("tolerance", "10").toInt(); for (const QDomElement &colorElement : QET::findInDomElement(colorsElement, "color")) { - m_transparent_colors.append(QColor( - colorElement.attribute("r").toInt(), - colorElement.attribute("g").toInt(), - colorElement.attribute("b").toInt())); + m_transparent_colors.append({ + QColor(colorElement.attribute("r").toInt(), + colorElement.attribute("g").toInt(), + colorElement.attribute("b").toInt()), + colorElement.attribute("tolerance", QString::number(wrapperTolerance)).toInt()}); } } @@ -1296,13 +1303,21 @@ QDomElement DiagramImageItem::toXml(QDomDocument &document) const if (hasColors) { QDomElement colorsElement = document.createElement("transparent_colors"); - colorsElement.setAttribute("tolerance", m_transparent_tolerance); - for (const QColor &color : m_transparent_colors) + // Best-effort fallback for an OLDER version of this same code + // (from before per-colour tolerance existed) reading a file + // saved by this one: uses the first colour's own tolerance as + // a single, plausible value rather than some fixed default, + // in case it ever needs to open a file like this. Newer code + // (including this version) always prefers each <color>'s own + // attribute below over this one. + colorsElement.setAttribute("tolerance", m_transparent_colors.first().tolerance); + for (const auto &pc : m_transparent_colors) { QDomElement colorElement = document.createElement("color"); - colorElement.setAttribute("r", color.red()); - colorElement.setAttribute("g", color.green()); - colorElement.setAttribute("b", color.blue()); + colorElement.setAttribute("r", pc.color.red()); + colorElement.setAttribute("g", pc.color.green()); + colorElement.setAttribute("b", pc.color.blue()); + colorElement.setAttribute("tolerance", pc.tolerance); colorsElement.appendChild(colorElement); } result.appendChild(colorsElement); @@ -1520,12 +1535,11 @@ void DiagramImageItem::setTransparentColor() QWidget *parentWidget = diagram()->views().isEmpty() ? nullptr : diagram()->views().first(); const QPixmap croppedBase = m_base_pixmap.copy(m_crop_rect); - ImageTransparentColorDialog dialog(croppedBase, m_transparent_colors, m_transparent_tolerance, parentWidget); + ImageTransparentColorDialog dialog(croppedBase, m_transparent_colors, parentWidget); if (dialog.exec() != QDialog::Accepted) return; m_transparent_colors = dialog.pickedColors(); - m_transparent_tolerance = dialog.tolerance(); const QPixmap oldPixmap = pixmap_; const QPixmap newPixmap = dialog.resultPixmap(); @@ -1609,7 +1623,7 @@ void DiagramImageItem::crop() const QPointF oldPos = pos(); const QPixmap oldPixmap = pixmap_; - const QPixmap newPixmap = computeDisplayPixmap(m_base_pixmap, newCropRect, m_transparent_colors, m_transparent_tolerance); + const QPixmap newPixmap = computeDisplayPixmap(m_base_pixmap, newCropRect, m_transparent_colors); m_crop_rect = newCropRect; // boundingRect() is exactly QRectF(pixmap_.rect()) (confirmed by diff --git a/sources/qetgraphicsitem/diagramimageitem.h b/sources/qetgraphicsitem/diagramimageitem.h index f59d419e1..9c4352582 100644 --- a/sources/qetgraphicsitem/diagramimageitem.h +++ b/sources/qetgraphicsitem/diagramimageitem.h @@ -20,6 +20,7 @@ #include "qetgraphicsitem.h" #include "shapetransform.h" +#include "../ui/imagetransparentcolordialog.h" #include <QColor> #include <QList> @@ -128,7 +129,7 @@ class DiagramImageItem : public QetGraphicsItem { void setTransparentColor(); void crop(); void restoreAspectRatio(); - static QPixmap computeDisplayPixmap(const QPixmap &base, const QRect &cropRect, const QList<QColor> &colors, int tolerance); + static QPixmap computeDisplayPixmap(const QPixmap &base, const QRect &cropRect, const QList<ImageTransparentColorDialog::PickedColor> &colors); void toggleHandleMode(); HandleMode nextHandleMode() const; @@ -161,22 +162,22 @@ class DiagramImageItem : public QetGraphicsItem { QPixmap pixmap_; // The true, pristine original -- never itself cropped or colour- // keyed. pixmap_ (the displayed result) is always re-derived from - // this plus m_crop_rect and m_transparent_colors/tolerance, via - // computeDisplayPixmap(). Without keeping this separate, re-opening - // either the crop or transparency dialog after using the other - // would show an already-modified image as if it were the source -- - // areas already cropped away or coloured out would be gone for - // good, with no way to recover or adjust them, only start over. - // Updated by whatever genuinely replaces or reorients the image's - // actual content (construction, replaceImage(), and mirror(), which - // also mirrors m_crop_rect to keep referring to the same region of - // the now-flipped base) -- never by crop() or setTransparentColor() + // this plus m_crop_rect and m_transparent_colors (each colour + // carrying its own tolerance), via computeDisplayPixmap(). Without + // keeping this separate, re-opening either the crop or + // transparency dialog after using the other would show an + // already-modified image as if it were the source -- areas already + // cropped away or coloured out would be gone for good, with no way + // to recover or adjust them, only start over. Updated by whatever + // genuinely replaces or reorients the image's actual content + // (construction, replaceImage(), and mirror(), which also mirrors + // m_crop_rect to keep referring to the same region of the + // now-flipped base) -- never by crop() or setTransparentColor() // themselves, which only ever change which subset of this base is // shown. QPixmap m_base_pixmap; QRect m_crop_rect; // relative to m_base_pixmap; equals m_base_pixmap.rect() when nothing has been cropped - QList<QColor> m_transparent_colors; - int m_transparent_tolerance = 10; + QList<ImageTransparentColorDialog::PickedColor> m_transparent_colors; // Independent scaleX/scaleY here is the actual point of this whole // member: QGraphicsItem::scale() is a single, uniform float, which diff --git a/sources/ui/imagetransparentcolordialog.cpp b/sources/ui/imagetransparentcolordialog.cpp index 0cc45d335..a4a4fd001 100644 --- a/sources/ui/imagetransparentcolordialog.cpp +++ b/sources/ui/imagetransparentcolordialog.cpp @@ -25,6 +25,7 @@ #include <QPainter> #include <QPushButton> #include <QSlider> +#include <QToolButton> #include <QVBoxLayout> #include <QVector> @@ -91,24 +92,23 @@ void ClickableImageLabel::mousePressEvent(QMouseEvent *event) @param pixmap the image to pick a transparent colour from @param parent */ -ImageTransparentColorDialog::ImageTransparentColorDialog(const QPixmap &basePixmap, const QList<QColor> &existingColors, - int existingTolerance, QWidget *parent) : +ImageTransparentColorDialog::ImageTransparentColorDialog(const QPixmap &basePixmap, + const QList<PickedColor> &existingColors, QWidget *parent) : QDialog(parent), m_sourceImage(basePixmap.toImage()), - m_pickedColors(existingColors), - m_tolerance(existingTolerance) + m_pickedColors(existingColors) { setWindowTitle(tr("Couleur transparente")); + if (!m_pickedColors.isEmpty()) + m_lastToleranceUsed = m_pickedColors.last().tolerance; + m_sourceLabel = new ClickableImageLabel(m_sourceImage, this); m_previewSourceImage = m_sourceLabel->displayImage(); m_previewLabel = new QLabel(this); m_hintLabel = new QLabel(this); - - m_toleranceSlider = new QSlider(Qt::Horizontal, this); - m_toleranceSlider->setRange(0, 100); - m_toleranceSlider->setValue(m_tolerance); + m_hintLabel->setWordWrap(true); auto *buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this); m_okButton = buttons->button(QDialogButtonBox::Ok); @@ -120,29 +120,19 @@ ImageTransparentColorDialog::ImageTransparentColorDialog(const QPixmap &basePixm grid->addWidget(m_sourceLabel, 1, 0); grid->addWidget(m_previewLabel, 1, 1); - // An empty row to start with if existingColors is empty -- - // rebuildSwatches() below populates it either way (including from - // existingColors on the first call), and again as colours get - // added or removed. - m_swatchesLayout = new QHBoxLayout; - - auto *colorRow = new QHBoxLayout; - colorRow->addWidget(m_hintLabel); - colorRow->addStretch(); - colorRow->addLayout(m_swatchesLayout); - - auto *toleranceRow = new QHBoxLayout; - toleranceRow->addWidget(new QLabel(tr("Tolérance"))); - toleranceRow->addWidget(m_toleranceSlider); + // One row per picked colour, appended/removed as rebuildSwatches() + // runs -- starts empty either way, populated by the very first + // rebuildSwatches() call below (including from existingColors, if + // any were passed in). + m_swatchesLayout = new QVBoxLayout; auto *mainLayout = new QVBoxLayout(this); mainLayout->addLayout(grid); - mainLayout->addLayout(colorRow); - mainLayout->addLayout(toleranceRow); + mainLayout->addWidget(m_hintLabel); + mainLayout->addLayout(m_swatchesLayout); mainLayout->addWidget(buttons); connect(m_sourceLabel, &ClickableImageLabel::colorPicked, this, &ImageTransparentColorDialog::onColorPicked); - connect(m_toleranceSlider, &QSlider::valueChanged, this, &ImageTransparentColorDialog::onToleranceChanged); connect(buttons, &QDialogButtonBox::accepted, this, &QDialog::accept); connect(buttons, &QDialogButtonBox::rejected, this, &QDialog::reject); @@ -157,30 +147,55 @@ ImageTransparentColorDialog::ImageTransparentColorDialog(const QPixmap &basePixm the first choice, with no way to work with more than one colour (a white background *and* a grey border, say) in the same pass. Skips an exact duplicate rather than adding a second, indistinguishable - swatch for it. + row for it. The new colour is seeded with whatever tolerance was + last used (not some fixed default), so successive picks in one + session feel consistent. @param color the colour sampled from the source image */ void ImageTransparentColorDialog::onColorPicked(const QColor &color) { - if (m_pickedColors.contains(color)) - return; + for (const PickedColor &existing : std::as_const(m_pickedColors)) + if (existing.color == color) + return; - m_pickedColors.append(color); + m_pickedColors.append({color, m_lastToleranceUsed}); m_okButton->setEnabled(true); rebuildSwatches(); updatePreview(); } +/** + @brief ImageTransparentColorDialog::setToleranceForIndex + Updates one colour's own tolerance in place -- deliberately doesn't + call rebuildSwatches(): only a number changed, not which rows exist + or what order they're in, so recreating every row's widgets (and, + worse, the very slider currently being dragged) on each tick would + be both wasteful and liable to interrupt the drag itself. + @param index which entry in m_pickedColors changed + @param value its new tolerance, 0-100 +*/ +void ImageTransparentColorDialog::setToleranceForIndex(int index, int value) +{ + if (index < 0 || index >= m_pickedColors.size()) + return; + m_pickedColors[index].tolerance = value; + m_lastToleranceUsed = value; + updatePreview(); +} + /** @brief ImageTransparentColorDialog::removeColor Removes one colour from the set -- the counterpart onColorPicked() was missing entirely before: picking the wrong pixel by mistake had no way to undo except cancelling the whole dialog and starting over. - @param color the colour to remove + @param index position in m_pickedColors to remove */ -void ImageTransparentColorDialog::removeColor(const QColor &color) +void ImageTransparentColorDialog::removeColor(int index) { - m_pickedColors.removeAll(color); + if (index < 0 || index >= m_pickedColors.size()) + return; + + m_pickedColors.removeAt(index); m_okButton->setEnabled(!m_pickedColors.isEmpty()); rebuildSwatches(); updatePreview(); @@ -188,11 +203,16 @@ void ImageTransparentColorDialog::removeColor(const QColor &color) /** @brief ImageTransparentColorDialog::rebuildSwatches - Rebuilds the row of picked-colour swatches from scratch against the + Rebuilds the list of picked-colour rows from scratch against the current m_pickedColors -- simpler and safer than trying to - incrementally add/remove individual widgets in sync with the list, + incrementally add/remove individual rows in sync with the list, given the list only ever changes one colour at a time and is never - large enough for a full rebuild to be a real cost. + large enough for a full rebuild to be a real cost. Each row is a + colour swatch (a plain, round, non-interactive indicator -- there's + nothing left to click it FOR, now that each row carries its own + slider instead of one shared slider needing a row selected first), + that row's own tolerance slider, and a small "x" button that + removes it. */ void ImageTransparentColorDialog::rebuildSwatches() { @@ -203,37 +223,47 @@ void ImageTransparentColorDialog::rebuildSwatches() delete item; } - for (const QColor &color : std::as_const(m_pickedColors)) + for (int i = 0; i < m_pickedColors.size(); ++i) { - auto *swatch = new QPushButton(this); + const PickedColor &pc = m_pickedColors.at(i); + + auto *row = new QWidget(this); + auto *rowLayout = new QHBoxLayout(row); + rowLayout->setContentsMargins(0, 0, 0, 0); + + auto *swatch = new QLabel(row); swatch->setFixedSize(24, 24); - swatch->setStyleSheet(QStringLiteral("background-color: rgb(%1,%2,%3); border: 1px solid palette(mid);") - .arg(color.red()).arg(color.green()).arg(color.blue())); - swatch->setToolTip(tr("rgb(%1, %2, %3) -- cliquer pour retirer").arg(color.red()).arg(color.green()).arg(color.blue())); - connect(swatch, &QPushButton::clicked, this, [this, color]() { removeColor(color); }); - m_swatchesLayout->addWidget(swatch); + swatch->setStyleSheet(QStringLiteral( + "background-color: rgb(%1,%2,%3); border: 1px solid palette(mid); border-radius: 12px;") + .arg(pc.color.red()).arg(pc.color.green()).arg(pc.color.blue())); + swatch->setToolTip(tr("rgb(%1, %2, %3)").arg(pc.color.red()).arg(pc.color.green()).arg(pc.color.blue())); + + auto *slider = new QSlider(Qt::Horizontal, row); + slider->setRange(0, 100); + slider->setValue(pc.tolerance); + slider->setToolTip(tr("Tolérance pour cette couleur")); + connect(slider, &QSlider::valueChanged, this, [this, i](int value) { setToleranceForIndex(i, value); }); + + auto *removeButton = new QToolButton(row); + removeButton->setText(QStringLiteral("×")); + removeButton->setToolTip(tr("Retirer cette couleur")); + connect(removeButton, &QToolButton::clicked, this, [this, i]() { removeColor(i); }); + + rowLayout->addWidget(swatch); + rowLayout->addWidget(slider); + rowLayout->addWidget(removeButton); + m_swatchesLayout->addWidget(row); } m_hintLabel->setText(m_pickedColors.isEmpty() ? tr("Cliquez sur l'image pour choisir une couleur") - : tr("Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer")); -} - -/** - @brief ImageTransparentColorDialog::onToleranceChanged - @param value the new tolerance, 0-100 -*/ -void ImageTransparentColorDialog::onToleranceChanged(int value) -{ - m_tolerance = value; - if (!m_pickedColors.isEmpty()) - updatePreview(); + : tr("Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.")); } /** @brief ImageTransparentColorDialog::updatePreview Recomputes the checkerboard-backed preview against the current set - of picked colours and the shared tolerance. Runs against + of picked colours, each at its own tolerance. Runs against m_previewSourceImage (the same downsampled copy ClickableImageLabel already computed for its own display, not the full-resolution m_sourceImage) -- this fires on every tolerance slider tick, not @@ -242,56 +272,60 @@ void ImageTransparentColorDialog::onToleranceChanged(int value) below, still computes the final, committed result at full resolution -- only this live preview is downsampled. Always re-evaluates every picked colour from scratch against - m_previewSourceImage, not any already-keyed result, so adjusting - the tolerance or adding/removing a colour never compounds successive + m_previewSourceImage, not any already-keyed result, so adjusting a + tolerance or adding/removing a colour never compounds successive passes. */ void ImageTransparentColorDialog::updatePreview() { - const QImage keyed = applyColorKey(m_previewSourceImage, m_pickedColors, m_tolerance); + const QImage keyed = applyColorKey(m_previewSourceImage, m_pickedColors); m_previewLabel->setPixmap(onCheckerboard(keyed)); } /** @brief ImageTransparentColorDialog::resultPixmap - @return the colour-keyed pixmap against every picked colour, or the - original pixmap unchanged if none were ever picked (the Ok button - stays disabled until at least one is, so this is mostly a defensive - fallback). + @return the colour-keyed pixmap against every picked colour, each at + its own tolerance, or the original pixmap unchanged if none were + ever picked (the Ok button stays disabled until at least one is, so + this is mostly a defensive fallback). */ QPixmap ImageTransparentColorDialog::resultPixmap() const { if (m_pickedColors.isEmpty()) return QPixmap::fromImage(m_sourceImage); - return QPixmap::fromImage(applyColorKey(m_sourceImage, m_pickedColors, m_tolerance)); + return QPixmap::fromImage(applyColorKey(m_sourceImage, m_pickedColors)); } /** @brief ImageTransparentColorDialog::applyColorKey Binary transparency within tolerance, not a smooth falloff: every - pixel within `tolerance` (0-100, mapped onto the maximum possible - RGB distance) of *any* of keyColors becomes fully transparent, - everything else keeps its existing alpha untouched. Squared distance - throughout, avoiding a sqrt per pixel; breaks out of the inner loop - on the first matching colour, since further matches wouldn't change - the outcome. + pixel within a colour's own `tolerance` (0-100, mapped onto the + maximum possible RGB distance) of that colour becomes fully + transparent, everything else keeps its existing alpha untouched -- + each of keyColors is checked against its own threshold, not one + shared across all of them, since a background colour and a border + colour rarely call for the same looseness of match. Squared + distance throughout, avoiding a sqrt per pixel; breaks out of the + inner loop on the first matching colour, since further matches + wouldn't change the outcome. @param source the image to key - @param keyColors the colours to make transparent - @param tolerance 0 (exact match only) to 100 (everything) + @param keyColors the colours (each with its own tolerance) to make transparent @return the resulting image, always in Format_ARGB32 */ -QImage ImageTransparentColorDialog::applyColorKey(const QImage &source, const QList<QColor> &keyColors, int tolerance) +QImage ImageTransparentColorDialog::applyColorKey(const QImage &source, const QList<PickedColor> &keyColors) { QImage result = source.convertToFormat(QImage::Format_ARGB32); if (keyColors.isEmpty()) return result; - QVector<QRgb> keys; + struct KeyEntry { QRgb rgb; qint64 threshold; }; + QVector<KeyEntry> keys; keys.reserve(keyColors.size()); - for (const QColor &c : keyColors) - keys.append(c.rgb()); - - const qint64 threshold = qint64(tolerance) * tolerance * 3 * 255 * 255 / (100 * 100); + for (const PickedColor &pc : keyColors) + { + const qint64 threshold = qint64(pc.tolerance) * pc.tolerance * 3 * 255 * 255 / (100 * 100); + keys.append({pc.color.rgb(), threshold}); + } for (int y = 0; y < result.height(); ++y) { @@ -299,11 +333,11 @@ QImage ImageTransparentColorDialog::applyColorKey(const QImage &source, const QL for (int x = 0; x < result.width(); ++x) { const QRgb px = line[x]; - for (const QRgb &key : keys) + for (const KeyEntry &key : std::as_const(keys)) { - const int dr = qRed(px) - qRed(key), dg = qGreen(px) - qGreen(key), db = qBlue(px) - qBlue(key); + const int dr = qRed(px) - qRed(key.rgb), dg = qGreen(px) - qGreen(key.rgb), db = qBlue(px) - qBlue(key.rgb); const qint64 distSq = qint64(dr) * dr + qint64(dg) * dg + qint64(db) * db; - if (distSq <= threshold) + if (distSq <= key.threshold) { line[x] = qRgba(qRed(px), qGreen(px), qBlue(px), 0); break; diff --git a/sources/ui/imagetransparentcolordialog.h b/sources/ui/imagetransparentcolordialog.h index c6b7d11a3..d6e8a0136 100644 --- a/sources/ui/imagetransparentcolordialog.h +++ b/sources/ui/imagetransparentcolordialog.h @@ -24,9 +24,8 @@ #include <QLabel> #include <QList> -class QSlider; +class QVBoxLayout; class QPushButton; -class QHBoxLayout; class QMouseEvent; /** @@ -72,74 +71,88 @@ class ClickableImageLabel : public QLabel @brief The ImageTransparentColorDialog class Lets the user click directly on a preview of the image to sample one or more colors -- each click adds to the set rather than replacing - the previous pick, shown as a row of removable swatches -- adjust a - shared tolerance, and see a live checkerboard-backed preview of the - result before committing. A self-contained modal dialog rather than - a diagram-level "click the canvas to pick" interaction mode, since - this needs neither undo-during-drag nor coexistence with other - tools; it only ever needs a handful of clicks, evaluated against a - pixmap the caller already has in hand. + the previous pick -- each shown as its own row: a colour swatch, a + slider for that colour's own tolerance right next to it, and a + remove button. Each colour keeps its own tolerance rather than + sharing one: a white background and a grey border rarely need the + same looseness of match, and forcing one tolerance onto both meant + either the background left ragged edges or the border ate into + content near it. A live checkerboard-backed preview of the combined + result updates as any slider moves. A self-contained modal dialog + rather than a diagram-level "click the canvas to pick" interaction + mode, since this needs neither undo-during-drag nor coexistence + with other tools; it only ever needs a handful of clicks, evaluated + against a pixmap the caller already has in hand. */ class ImageTransparentColorDialog : public QDialog { Q_OBJECT public: + /// One picked colour and the tolerance it's individually keyed + /// with -- the whole point of this being a struct rather than + /// two parallel lists is that the two can never drift out of + /// index alignment with each other. + struct PickedColor + { + QColor color; + int tolerance; + }; + /// @param basePixmap the pristine source to pick colours from -- /// the caller's responsibility to pass the true original, not /// an already colour-keyed result, or previously-transparent /// areas would show as plain background rather than a pickable /// surface, and re-picking the same colour would be a no-op. - /// @param existingColors colours already keyed out of basePixmap - /// in a previous session, shown as swatches from the start - /// rather than forcing them to be re-picked from scratch. - /// @param existingTolerance the tolerance from that previous - /// session, if any. - explicit ImageTransparentColorDialog(const QPixmap &basePixmap, const QList<QColor> &existingColors = {}, - int existingTolerance = 10, QWidget *parent = nullptr); + /// @param existingColors colours (with their individual + /// tolerances) already keyed out of basePixmap in a previous + /// session, shown as rows from the start rather than forcing + /// them to be re-picked from scratch. + explicit ImageTransparentColorDialog(const QPixmap &basePixmap, + const QList<PickedColor> &existingColors = {}, QWidget *parent = nullptr); /// The resulting pixmap: basePixmap unchanged if no colour is - /// picked, colour-keyed against every picked colour otherwise. + /// picked, colour-keyed against every picked colour (each at + /// its own tolerance) otherwise. QPixmap resultPixmap() const; - /// The final set of picked colours, for the caller to remember - /// across dialog sessions -- may differ from existingColors if - /// any were added or removed. - QList<QColor> pickedColors() const { return m_pickedColors; } - /// The final tolerance, for the same reason. - int tolerance() const { return m_tolerance; } + /// The final set of picked colours and their individual + /// tolerances, for the caller to remember across dialog + /// sessions -- may differ from existingColors if any were + /// added, removed, or had their tolerance adjusted. + QList<PickedColor> pickedColors() const { return m_pickedColors; } /// Public so DiagramImageItem can re-derive its display pixmap /// directly (base + crop + these colours) without needing to /// re-open this dialog every time the crop region changes -- /// binary transparency within tolerance, not a smooth falloff: - /// every pixel within `tolerance` (0-100, mapped onto the - /// maximum possible RGB distance) of *any* of keyColors becomes - /// fully transparent, everything else keeps its existing alpha - /// untouched. Squared distance throughout, avoiding a sqrt per - /// pixel; breaks out of the inner loop on the first matching - /// colour, since further matches wouldn't change the outcome. - static QImage applyColorKey(const QImage &source, const QList<QColor> &keyColors, int tolerance); + /// every pixel within a colour's own `tolerance` (0-100, mapped + /// onto the maximum possible RGB distance) of that colour + /// becomes fully transparent, everything else keeps its + /// existing alpha untouched. Squared distance throughout, + /// avoiding a sqrt per pixel; breaks out of the inner loop on + /// the first matching colour, since further matches wouldn't + /// change the outcome. + static QImage applyColorKey(const QImage &source, const QList<PickedColor> &keyColors); private slots: void onColorPicked(const QColor &color); - void onToleranceChanged(int value); private: - void removeColor(const QColor &color); + void setToleranceForIndex(int index, int value); + void removeColor(int index); void rebuildSwatches(); void updatePreview(); static QPixmap onCheckerboard(const QImage &image); - QImage m_sourceImage; - QImage m_previewSourceImage; // downsampled -- see ClickableImageLabel::displayImage()'s comment for why - QList<QColor> m_pickedColors; - int m_tolerance = 10; + QImage m_sourceImage; + QImage m_previewSourceImage; // downsampled -- see ClickableImageLabel::displayImage()'s comment for why + QList<PickedColor> m_pickedColors; + int m_lastToleranceUsed = 10; // seeds a newly-picked colour's own tolerance, so successive picks in one session feel consistent rather than each resetting to some fixed default ClickableImageLabel *m_sourceLabel; QLabel *m_previewLabel; - QHBoxLayout *m_swatchesLayout; + QVBoxLayout *m_swatchesLayout; // one row per picked colour, stacked vertically -- each row now carries its own slider, too wide to lay out side by side the way plain swatches once were QLabel *m_hintLabel; - QSlider *m_toleranceSlider; QPushButton *m_okButton; }; From 2699a0aec8f1b7b618ae1a95280a953f03956575 Mon Sep 17 00:00:00 2001 From: Kellermorph <thomas.heynk@web.de> Date: Sun, 6 Sep 2026 09:06:34 +0200 Subject: [PATCH 35/95] Enable PDF import in Flatpak by adding QtWebEngine BaseApp --- build-aux/flatpak/org.qelectrotech.QElectroTech.json | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/build-aux/flatpak/org.qelectrotech.QElectroTech.json b/build-aux/flatpak/org.qelectrotech.QElectroTech.json index 5d6386990..4c673b598 100644 --- a/build-aux/flatpak/org.qelectrotech.QElectroTech.json +++ b/build-aux/flatpak/org.qelectrotech.QElectroTech.json @@ -3,6 +3,8 @@ "runtime": "org.kde.Platform", "runtime-version": "6.11", "sdk": "org.kde.Sdk", + "base": "io.qt.qtwebengine.BaseApp", + "base-version": "6.11", "command": "qelectrotech", "rename-desktop-file": "org.qelectrotech.qelectrotech.desktop", "rename-appdata-file": "qelectrotech.appdata.xml", @@ -25,13 +27,14 @@ "*.la", "*.a" ], + "cleanup-commands": [ + "/app/cleanup-BaseApp.sh" + ], "modules": [ "tkinter.json", "pypi-dependencies.json", { "name": "qelectrotech", - "//qt6-private-headers-note": "qt6-base-private-dev has no Flatpak build-depends equivalent — private Qt6 headers ship inside org.kde.Sdk itself. If the cmake build fails looking for QtCore/private/*.h, the SDK/runtime branch is mismatched with the source tree, not a missing package.", - "//sqlite-driver-note": "libqt6sql6-sqlite / libsqlite3-dev have no Flatpak build-depends equivalent either. QET_EXPORT_PROJECT_DB=ON assumes the KDE runtime ships the Qt6 SQLite plugin (libqsqlite.so) already built into QtSql — verified at Debian packaging time this needed an explicit runtime dep there (see debian/control). Test the in-app database export after building; if it silently fails, the runtime's QtSql plugin set needs checking, not a package to add here.", "buildsystem": "cmake", "config-opts": [ "-DCMAKE_INSTALL_PREFIX=/app", From 975ab31cc10cdc4cdffeb72d09b5b50da923820f Mon Sep 17 00:00:00 2001 From: Laurent Trinques <scorpio@qelectrotech.org> Date: Sun, 6 Sep 2026 09:44:51 +0200 Subject: [PATCH 36/95] Update translations files --- lang/qet_ar.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_ca.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_cs.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_da.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_de.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_el.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_en.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_es.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_fr.ts | 69 +++++++++++++++++++++++++---------------------- lang/qet_hr.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_hu.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_it.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_ja.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_ko.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_mn.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_nb.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_nl_BE.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_nl_NL.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_pl.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_pt.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_pt_BR.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_ro.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_rs.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_ru.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_sk.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_sl.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_sr.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_sv.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_tr.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_uk.ts | 65 +++++++++++++++++++++++--------------------- lang/qet_zh.ts | 65 +++++++++++++++++++++++--------------------- 31 files changed, 1087 insertions(+), 932 deletions(-) diff --git a/lang/qet_ar.ts b/lang/qet_ar.ts index 6263aa6a6..bd3f73796 100644 --- a/lang/qet_ar.ts +++ b/lang/qet_ar.ts @@ -849,7 +849,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1550,87 +1550,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>صورة</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">تحديد صورة ...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">خطأ</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">إستحالة تحميل الصورة .</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5116,35 +5116,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_ca.ts b/lang/qet_ca.ts index e4f50eac6..54459ce9f 100644 --- a/lang/qet_ca.ts +++ b/lang/qet_ca.ts @@ -850,7 +850,7 @@ Nota: Aquestes opcions NO permeten ni bloquegen les numeracions automàtiques, n <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Nota: Aquestes opcions NO permeten ni bloquegen les numeracions automàtiques, n <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>una imatge</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Selecciona una imatge ...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Error</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">No es pot carregar la imatge.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5120,35 +5120,40 @@ Falten %1 línies per mostrar tota la informació</translation> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_cs.ts b/lang/qet_cs.ts index 587940256..b0f4178dd 100644 --- a/lang/qet_cs.ts +++ b/lang/qet_cs.ts @@ -850,7 +850,7 @@ Poznámka: tyto volby automatické číslování ani NEPOVOLÍ ani nezakáží, <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Poznámka: tyto volby automatické číslování ani NEPOVOLÍ ani nezakáží, <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>Obrázek</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Vybrat obrázek...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Chyba</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Obrázek nelze nahrát.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5112,35 +5112,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Náhled</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_da.ts b/lang/qet_da.ts index c2e2b1484..0103f819c 100644 --- a/lang/qet_da.ts +++ b/lang/qet_da.ts @@ -850,7 +850,7 @@ Bemærk: Disse muligheder VIL IKKE tillade eller blokere autonummereringer, kun <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Bemærk: Disse muligheder VIL IKKE tillade eller blokere autonummereringer, kun <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>et billede</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Vælg billede...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Fejl</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Kan ikke indlæse billede.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5112,35 +5112,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Oversigt</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_de.ts b/lang/qet_de.ts index 20404ea70..d253acc3c 100644 --- a/lang/qet_de.ts +++ b/lang/qet_de.ts @@ -853,7 +853,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.</transl <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1551,87 +1551,87 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.</transl <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>eines Bildes</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Ein Bild auswählen...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Fehler</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Laden vom Bild fehlgeschlagen.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5138,35 +5138,40 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Vorschau</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_el.ts b/lang/qet_el.ts index 76d06fa6f..70b4283ec 100644 --- a/lang/qet_el.ts +++ b/lang/qet_el.ts @@ -850,7 +850,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>εικόνα</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Επιλογή εικόνας...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Σφάλμα</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Αδυναμία φόρτωσης της εικόνας</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5112,35 +5112,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Προεπισκόπηση</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_en.ts b/lang/qet_en.ts index 62c0037ae..064142194 100644 --- a/lang/qet_en.ts +++ b/lang/qet_en.ts @@ -850,7 +850,7 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>image</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Select an image ...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Error</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Unable to load the image.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5120,35 +5120,40 @@ Any setting other than “No rounding” may cause rendering errors in the proje <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Preview</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_es.ts b/lang/qet_es.ts index b1acbc553..b84563fb2 100644 --- a/lang/qet_es.ts +++ b/lang/qet_es.ts @@ -849,7 +849,7 @@ Nota: Estas opciones NO permiten o bloquean las Numeraciones automáticas, solo <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1549,87 +1549,87 @@ Nota: Estas opciones NO permiten o bloquean las Numeraciones automáticas, solo <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>una imagen</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Seleccione una imagen ...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Error</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Imposible cargar la imagen.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5124,35 +5124,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Vista previa</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_fr.ts b/lang/qet_fr.ts index 3247af97c..0682a8866 100644 --- a/lang/qet_fr.ts +++ b/lang/qet_fr.ts @@ -848,7 +848,7 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation></translation> </message> @@ -1546,87 +1546,87 @@ Remarque: Ces options n'autorisent ou bloquent l'auto numérotation, s <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation></translation> </message> @@ -5090,35 +5090,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> - <translation></translation> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> - <translation></translation> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> + <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_hr.ts b/lang/qet_hr.ts index a52380f44..aa70d2d30 100644 --- a/lang/qet_hr.ts +++ b/lang/qet_hr.ts @@ -843,7 +843,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1541,87 +1541,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Greška</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5075,35 +5075,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_hu.ts b/lang/qet_hu.ts index 804d2b753..c52fba1e7 100644 --- a/lang/qet_hu.ts +++ b/lang/qet_hu.ts @@ -859,7 +859,7 @@ Megjegyzés: ezek a lehetőségek NEM engedélyezik, vagy blokkolják az Automat <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1557,87 +1557,87 @@ Megjegyzés: ezek a lehetőségek NEM engedélyezik, vagy blokkolják az Automat <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>egy kép</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Kép kiválasztása ...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Hiba</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Nem lehet a fájlt betölteni.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5136,35 +5136,40 @@ Bármilyen beállítás, ami más mint a „Nincs kerekítés” renderelési h <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Előnézet</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_it.ts b/lang/qet_it.ts index 56b68ce0a..3fbd223bd 100644 --- a/lang/qet_it.ts +++ b/lang/qet_it.ts @@ -850,7 +850,7 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Nota: queste opzioni non consentono attivare o disattivare la numerazione automa <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>una immagine</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Selezionare un'immagine...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Errore</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Impossibile caricare l'immagine.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5105,35 +5105,40 @@ Qui è possibile specificare il valore predefinito di questo campo per gli ogget <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Anteprima</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_ja.ts b/lang/qet_ja.ts index 6a6a27af1..53d928cdb 100644 --- a/lang/qet_ja.ts +++ b/lang/qet_ja.ts @@ -850,7 +850,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>画像</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">画像を選択...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">エラー</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">画像を読み込めません。</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5110,35 +5110,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">プレビュー</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_ko.ts b/lang/qet_ko.ts index a139c992f..4b360c561 100644 --- a/lang/qet_ko.ts +++ b/lang/qet_ko.ts @@ -848,7 +848,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1546,87 +1546,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>이미지</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">이미지 선택...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">오류</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">이미지를 불러올 수 없습니다.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5083,35 +5083,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">미리보기</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_mn.ts b/lang/qet_mn.ts index edc3c1d6d..d6680a80e 100644 --- a/lang/qet_mn.ts +++ b/lang/qet_mn.ts @@ -850,7 +850,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>дүрслэл</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Алдаа</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5089,35 +5089,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Урьдчилан харах</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_nb.ts b/lang/qet_nb.ts index e74bb3024..3ca904080 100644 --- a/lang/qet_nb.ts +++ b/lang/qet_nb.ts @@ -851,7 +851,7 @@ Anmerkning: Disse opsjonene endrer IKKE den automatiske nummereringen, bare dens <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1549,87 +1549,87 @@ Anmerkning: Disse opsjonene endrer IKKE den automatiske nummereringen, bare dens <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>ett bilde</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Velg et bilde</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Kunne ikke laste bildet</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5106,35 +5106,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Preview</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_nl_BE.ts b/lang/qet_nl_BE.ts index cecde66e8..0fae608fa 100644 --- a/lang/qet_nl_BE.ts +++ b/lang/qet_nl_BE.ts @@ -851,7 +851,7 @@ Let op: Deze opties blokkeren NIET de Automatisch nummering, maar passen alleen <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1549,87 +1549,87 @@ Let op: Deze opties blokkeren NIET de Automatisch nummering, maar passen alleen <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>een afbeelding</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Selecteer een afbeelding...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Fout</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Onmogelijk om de afbeelding op te halen.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5141,35 +5141,40 @@ Positie vergrendelen</translation> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_nl_NL.ts b/lang/qet_nl_NL.ts index 6f53f2597..6fda7d59a 100644 --- a/lang/qet_nl_NL.ts +++ b/lang/qet_nl_NL.ts @@ -843,7 +843,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1541,87 +1541,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5071,35 +5071,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_pl.ts b/lang/qet_pl.ts index 63559990a..cacf8ff4a 100644 --- a/lang/qet_pl.ts +++ b/lang/qet_pl.ts @@ -853,7 +853,7 @@ Uwaga: te opcje nie pozwalają na zablokowanie automatycznej numeracji tylko ust <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1551,87 +1551,87 @@ Uwaga: te opcje nie pozwalają na zablokowanie automatycznej numeracji tylko ust <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>obraz</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Wybierz obraz...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Błąd</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Nie można załadować obrazu.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5136,35 +5136,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Podgląd</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_pt.ts b/lang/qet_pt.ts index c5ec37074..bb3e823b0 100644 --- a/lang/qet_pt.ts +++ b/lang/qet_pt.ts @@ -851,7 +851,7 @@ form <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1558,87 +1558,87 @@ form <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Erro</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5125,35 +5125,40 @@ form <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Antevisão</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_pt_BR.ts b/lang/qet_pt_BR.ts index 80e6f56f5..337d31ef6 100644 --- a/lang/qet_pt_BR.ts +++ b/lang/qet_pt_BR.ts @@ -851,7 +851,7 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1549,87 +1549,87 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>uma imagem</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Selecione uma imagem...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Erro</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Não é possível carregar a imagem.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5135,35 +5135,40 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Visualização</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_ro.ts b/lang/qet_ro.ts index e8ad7e6f1..14e22e0dd 100644 --- a/lang/qet_ro.ts +++ b/lang/qet_ro.ts @@ -845,7 +845,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1543,87 +1543,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>o imagine</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Selectați o imagine...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Eroare</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Nu se poate încărca imaginea.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5076,35 +5076,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Previzualizare</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_rs.ts b/lang/qet_rs.ts index 3c36e9d61..577f0c900 100644 --- a/lang/qet_rs.ts +++ b/lang/qet_rs.ts @@ -843,7 +843,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1541,87 +1541,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5073,35 +5073,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_ru.ts b/lang/qet_ru.ts index 43a6ed6bc..11ab32ff3 100644 --- a/lang/qet_ru.ts +++ b/lang/qet_ru.ts @@ -854,7 +854,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1557,87 +1557,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>Изображение</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Выберите изображение...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Ошибка</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Невозможно загрузить изображение.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5131,35 +5131,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Предпросмотр</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_sk.ts b/lang/qet_sk.ts index 1dfc67e65..3ebbca262 100644 --- a/lang/qet_sk.ts +++ b/lang/qet_sk.ts @@ -843,7 +843,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1541,87 +1541,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5073,35 +5073,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_sl.ts b/lang/qet_sl.ts index a0bc19903..3b2d3bcba 100644 --- a/lang/qet_sl.ts +++ b/lang/qet_sl.ts @@ -843,7 +843,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1541,87 +1541,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5075,35 +5075,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_sr.ts b/lang/qet_sr.ts index fa2c4f559..e496b8fdd 100644 --- a/lang/qet_sr.ts +++ b/lang/qet_sr.ts @@ -843,7 +843,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1541,87 +1541,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5073,35 +5073,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_sv.ts b/lang/qet_sv.ts index 32eacedba..106c85074 100644 --- a/lang/qet_sv.ts +++ b/lang/qet_sv.ts @@ -850,7 +850,7 @@ Notera: Dessa alternativ TILLÅTER ELLER BLOCKERAR INTE auto-numreringen, endast <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Notera: Dessa alternativ TILLÅTER ELLER BLOCKERAR INTE auto-numreringen, endast <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>en bild</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Välj en bild...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Fel</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Det går inte att ladda bilden.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5112,35 +5112,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Översikt</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_tr.ts b/lang/qet_tr.ts index 6699ac7ef..ec58ef57e 100644 --- a/lang/qet_tr.ts +++ b/lang/qet_tr.ts @@ -853,7 +853,7 @@ Not: Bu durum "Otomatik Numaralandırma"'ya engel koymaz veya izi <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1553,88 +1553,88 @@ Not: Bu durum "Otomatik Numaralandırma"'ya engel koymaz veya izi <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translatorcomment>I am not sure about this. It should be checked.</translatorcomment> <translation>Bir görüntü</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Bir resim seç...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Hata</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Resim yüklenemiyor.</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5134,35 +5134,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Önizleme</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_uk.ts b/lang/qet_uk.ts index 6ed14310d..064e595e7 100644 --- a/lang/qet_uk.ts +++ b/lang/qet_uk.ts @@ -850,7 +850,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>Зображення</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">Виберіть зображення...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">Помилка</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">Помилка</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5115,35 +5115,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">Попередній перегляд</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> diff --git a/lang/qet_zh.ts b/lang/qet_zh.ts index 3908b809d..1e803ec29 100644 --- a/lang/qet_zh.ts +++ b/lang/qet_zh.ts @@ -850,7 +850,7 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <context> <name>ClickableImageLabel</name> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="56"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> <translation type="unfinished"></translation> </message> @@ -1548,87 +1548,87 @@ Note: These options DO NOT allow or block Auto Numberings, only their Update Pol <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1108"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> <source>une image</source> <translation>图片</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1367"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1370"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1373"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1376"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1377"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1381"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1416"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> <translation type="unfinished">选择图片...</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1417"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> <translation type="unfinished">错误</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1424"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> <translation type="unfinished">无法加载图片。</translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1441"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1484"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1534"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1628"/> + <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> <translation type="unfinished"></translation> </message> @@ -5129,35 +5129,40 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="117"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> <translation type="unfinished">预览</translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="134"/> - <source>Tolérance</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> + <source>rgb(%1, %2, %3)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="211"/> - <source>rgb(%1, %2, %3) -- cliquer pour retirer</source> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> + <source>Tolérance pour cette couleur</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="217"/> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> + <source>Retirer cette couleur</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> + <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="218"/> - <source>Cliquez sur l'image pour ajouter une couleur, ou sur une pastille pour la retirer</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>ImportElementDialog</name> From ef4e186e423f7f055b6bdc4b414af1740554512f Mon Sep 17 00:00:00 2001 From: Laurent Trinques <scorpio@qelectrotech.org> Date: Sun, 6 Sep 2026 09:48:02 +0200 Subject: [PATCH 37/95] Update FR EN translations files --- lang/qet_en.qm | Bin 322729 -> 341409 bytes lang/qet_en.ts | 289 +++++++++++++++++++++++++------------------------ lang/qet_fr.qm | Bin 218563 -> 218692 bytes lang/qet_fr.ts | 8 +- 4 files changed, 153 insertions(+), 144 deletions(-) diff --git a/lang/qet_en.qm b/lang/qet_en.qm index 6d0e60536aa193dd5cb9e38a8e902147119e67c2..c09c7e9ad3c53c26c3878d75e677f792a848acc5 100644 GIT binary patch delta 36240 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 delta 21452 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 diff --git a/lang/qet_en.ts b/lang/qet_en.ts index 064142194..bcf971599 100644 --- a/lang/qet_en.ts +++ b/lang/qet_en.ts @@ -852,7 +852,7 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> - <translation type="unfinished"></translation> + <translation>Click to choose a color</translation> </message> </context> <context> @@ -1074,7 +1074,7 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <message> <location filename="../sources/ui/conductorpropertieswidget.ui" line="274"/> <source>bus</source> - <translation></translation> + <translation>bus</translation> </message> <message> <location filename="../sources/ui/conductorpropertieswidget.ui" line="340"/> @@ -1426,7 +1426,7 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <message> <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> - <translation type="unfinished"></translation> + <translation>Click: position at original size. Click-drag: position and resize. Right-click: rotate 90°. Ctrl+wheel: adjust size.</translation> </message> </context> <context> @@ -1434,7 +1434,7 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <message> <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> - <translation type="unfinished"></translation> + <translation>Click: corner point. Click-drag: curve point. Click on the first point: close. Esc/Enter: finish. Right-click: undo the last point.</translation> </message> </context> <context> @@ -1442,37 +1442,37 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Left click: position the starting point (Ctrl = free position)</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> - <translation type="unfinished"></translation> + <translation>Left click: position the first corner (Ctrl = center point, free position)</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Left click: position the first point (Ctrl = free position)</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation>Left click: position the end point (Ctrl = free position); right click: cancel</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation>Left click: position the opposite corner (Shift = square, Ctrl = from center + free position, Ctrl+Shift = centered square); right click: cancel</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation>Left click: position the opposite corner (Shift = circle, Ctrl = from center + free position, Ctrl+Shift = centered circle); right click: cancel</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> - <translation type="unfinished"></translation> + <translation>Left click: next point; double-click or Enter: finish; right click: undo the last point</translation> </message> </context> <context> @@ -1480,72 +1480,72 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> <source>redimensionner</source> - <translation type="unfinished"></translation> + <translation>resize</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> <source>pivoter/incliner</source> - <translation type="unfinished"></translation> + <translation>rotate/skew</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> <source>Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation>Click: mode %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> - <translation type="unfinished"></translation> + <translation>Drag a corner/edge: resize (Ctrl = from center, Shift = keep proportions)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation>Drag a corner: rotate (Shift = 15° steps); drag an edge: skew (Shift = 15° steps); red point: move the rotation center</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> <source> -- %1 : mode %2</source> - <translation type="unfinished"></translation> + <translation> -- %1: mode %2</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> <source>Cliquer</source> - <translation type="unfinished"></translation> + <translation>Click</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> - <translation type="unfinished"></translation> + <translation>Drag: resize (Shift = keep proportions, Ctrl = from center)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> <source>Glisser : pivoter (Maj = par pas de 15°)</source> - <translation type="unfinished"></translation> + <translation>Drag: rotate (Shift = 15° steps)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> <source>Glisser : incliner (Maj = par pas de 15°)</source> - <translation type="unfinished"></translation> + <translation>Drag: skew (Shift = 15° steps)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> <source>Glisser : déplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation>Drag: move the rotation center</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> <source>Déplacer le centre de rotation d'une image</source> - <translation type="unfinished"></translation> + <translation>Move an image's rotation center</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> <source>Modifier une image</source> - <translation type="unfinished"></translation> + <translation>Edit an image</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> <source>Restaurer les proportions d'une image</source> - <translation type="unfinished"></translation> + <translation>Restore an image's proportions</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> @@ -1555,82 +1555,82 @@ Note: these options DO NOT allow or block auto numberings, only their update pol <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> - <translation type="unfinished"></translation> + <translation>Replace the image...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> - <translation type="unfinished"></translation> + <translation>Transparent color...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> - <translation type="unfinished"></translation> + <translation>Crop...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> - <translation type="unfinished"></translation> + <translation>Horizontal mirror</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> - <translation type="unfinished"></translation> + <translation>Vertical mirror</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> - <translation type="unfinished"></translation> + <translation>Restore proportions</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> - <translation type="unfinished"></translation> + <translation>Properties...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> <source>Selectionner une image...</source> - <translation type="unfinished">Select an image ...</translation> + <translation>Select an image ...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> - <translation type="unfinished"></translation> + <translation>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Erreur</source> - <translation type="unfinished">Error</translation> + <translation>Error</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> <source>Impossible de charger l'image.</source> - <translation type="unfinished">Unable to load the image.</translation> + <translation>Unable to load the image.</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> - <translation type="unfinished"></translation> + <translation>Replace an image</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> - <translation type="unfinished"></translation> + <translation>Horizontal mirror of an image</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> - <translation type="unfinished"></translation> + <translation>Vertical mirror of an image</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> - <translation type="unfinished"></translation> + <translation>Set a transparent color</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> - <translation type="unfinished"></translation> + <translation>Crop an image</translation> </message> </context> <context> @@ -2958,7 +2958,7 @@ The element's display name is edited separately in the element properties.< <message> <location filename="../sources/ui/elementpropertieswidget.cpp" line="402"/> <source>Verrouiller la position</source> - <translation type="unfinished">Lock Position</translation> + <translation>Lock Position</translation> </message> <message> <location filename="../sources/ui/elementpropertieswidget.cpp" line="418"/> @@ -4057,7 +4057,16 @@ The "Incrementation" field is not used. You can also assign any other titleblock variable that you create. Text and number inputs are also available.</source> - <translation></translation> + <translation>You can use the following variables to your formula: + -%prefix: Default Element Prefix + -%l: Element Line + -%c: Element Column + -%F: Folio Name + -%f or %id: Folio ID + -%total: Total of folios +You can also assign any other titleblock variable +that you create. Text and number inputs are + also available.</translation> </message> </context> <context> @@ -4470,7 +4479,7 @@ Vous pouvez spécifier ici la valeur par défaut de ce champ pour les éléments <location filename="../sources/ui/configpage/generalconfigurationpage.ui" line="1029"/> <location filename="../sources/ui/configpage/generalconfigurationpage.ui" line="1036"/> <source>max:</source> - <translation></translation> + <translation>max:</translation> </message> <message> <location filename="../sources/ui/configpage/generalconfigurationpage.ui" line="990"/> @@ -4481,7 +4490,7 @@ Vous pouvez spécifier ici la valeur par défaut de ce champ pour les éléments <location filename="../sources/ui/configpage/generalconfigurationpage.ui" line="938"/> <location filename="../sources/ui/configpage/generalconfigurationpage.ui" line="1043"/> <source>min:</source> - <translation></translation> + <translation>min:</translation> </message> <message> <location filename="../sources/ui/configpage/generalconfigurationpage.ui" line="1050"/> @@ -5006,22 +5015,22 @@ Any setting other than “No rounding” may cause rendering errors in the proje <message> <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> <source>Rogner l'image</source> - <translation type="unfinished"></translation> + <translation>Crop the image</translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> - <translation type="unfinished"></translation> + <translation>Drag the handles, or the inside of the frame, to adjust the area to keep.</translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> <source>Réinitialiser</source> - <translation type="unfinished">Reset</translation> + <translation>Reset</translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> <source>Revenir à l'image complète, sans rognage</source> - <translation type="unfinished"></translation> + <translation>Return to the full image, without cropping</translation> </message> </context> <context> @@ -5034,51 +5043,51 @@ Any setting other than “No rounding” may cause rendering errors in the proje <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="23"/> <source>Largeur</source> - <translation type="unfinished">Width</translation> + <translation>Width</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> <source> %</source> - <translation type="unfinished"></translation> + <translation> %</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> - <translation type="unfinished"></translation> + <translation>Locked: changing the width or height adjusts the other to keep proportions. Click to unlock.</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> <source>Hauteur</source> - <translation type="unfinished">Height</translation> + <translation>Height</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> <source>Restaurer les proportions</source> - <translation type="unfinished"></translation> + <translation>Restore proportions</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> <source>Angle</source> - <translation type="unfinished"></translation> + <translation>Angle</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> <source> °</source> - <translation type="unfinished"></translation> + <translation> °</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> <source>Inclinaison X</source> - <translation type="unfinished"></translation> + <translation>X skew</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> <source>Inclinaison Y</source> - <translation type="unfinished"></translation> + <translation>Y skew</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> @@ -5088,28 +5097,28 @@ Any setting other than “No rounding” may cause rendering errors in the proje <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> <source>Modifier la largeur d'une image</source> - <translation type="unfinished"></translation> + <translation>Change the width of an image</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> <source>Modifier la hauteur d'une image</source> - <translation type="unfinished"></translation> + <translation>Change the height of an image</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> <source>Modifier l'angle d'une image</source> - <translation type="unfinished"></translation> + <translation>Change the angle of an image</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> <source>Modifier l'inclinaison d'une image</source> - <translation type="unfinished"></translation> + <translation>Change the skew of an image</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> - <translation type="unfinished"></translation> + <translation>Unlocked: width and height can be changed independently. Click to lock.</translation> </message> </context> <context> @@ -5117,42 +5126,42 @@ Any setting other than “No rounding” may cause rendering errors in the proje <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> <source>Couleur transparente</source> - <translation type="unfinished"></translation> + <translation>Transparent color</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> - <translation type="unfinished"></translation> + <translation>Source image</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> <source>Aperçu</source> - <translation type="unfinished">Preview</translation> + <translation>Preview</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> <source>rgb(%1, %2, %3)</source> - <translation type="unfinished"></translation> + <translation>rgb(%1, %2, %3)</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> <source>Tolérance pour cette couleur</source> - <translation type="unfinished"></translation> + <translation>Tolerance for this color</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> <source>Retirer cette couleur</source> - <translation type="unfinished"></translation> + <translation>Remove this color</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> - <translation type="unfinished"></translation> + <translation>Click on the image to add a color. Adjust each color's tolerance with its slider, or click × to remove it.</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> - <translation type="unfinished"></translation> + <translation>Click on the image to choose a color</translation> </message> </context> <context> @@ -8146,7 +8155,7 @@ Available options: <message> <location filename="../sources/qetdiagrameditor.cpp" line="745"/> <source>Ajouter une courbe</source> - <translation type="unfinished"></translation> + <translation>Add a curve</translation> </message> <message> <location filename="../sources/qetdiagrameditor.cpp" line="746"/> @@ -8191,7 +8200,7 @@ Available options: <message> <location filename="../sources/qetdiagrameditor.cpp" line="757"/> <source>Ajoute une courbe de Bézier sur le folio actuel</source> - <translation type="unfinished"></translation> + <translation>Adds a Bézier curve on the current sheet</translation> </message> <message> <location filename="../sources/qetdiagrameditor.cpp" line="758"/> @@ -11392,7 +11401,7 @@ Error: Make sure the file %1 is a valid .dxf file</translation> <location filename="../sources/dxf/dxftoelmt.cpp" line="59"/> <location filename="../sources/qet_elementscaler/qet_elementscaler.cpp" line="101"/> <source>See details here:</source> - <translation></translation> + <translation>See details here:</translation> </message> <message> <location filename="../sources/dxf/dxftoelmt.cpp" line="106"/> @@ -11404,7 +11413,7 @@ Please download it by following the link and unzip it in the installation folder <message> <location filename="../sources/ui/terminalnumberingdialog.cpp" line="220"/> <source>Automatic terminal numbering</source> - <translation></translation> + <translation>Automatic terminal numbering</translation> </message> <message> <location filename="../sources/editor/graphicspart/partplctable.h" line="46"/> @@ -11463,7 +11472,7 @@ Please download it by following the link and unzip it in the installation folder <message> <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> <source>Transformer %1</source> - <translation type="unfinished"></translation> + <translation>Transform %1</translation> </message> </context> <context> @@ -11534,202 +11543,202 @@ Please add a new table or adjust the existing table to display all information.< <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> <source>Déformer une courbe</source> - <translation type="unfinished"></translation> + <translation>Deform a curve</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> <source>Nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation>Nearest node</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> <source>Lisse</source> - <translation type="unfinished"></translation> + <translation>Smooth</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> <source>Symétrique</source> - <translation type="unfinished"></translation> + <translation>Symmetric</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> <source>Anguleux</source> - <translation type="unfinished"></translation> + <translation>Corner</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> <source>Supprimer le nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation>Delete the nearest node</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> <source>Convertir en polyligne</source> - <translation type="unfinished"></translation> + <translation>Convert to polyline</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> <source>Miroir horizontal</source> - <translation type="unfinished"></translation> + <translation>Horizontal mirror</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> <source>Miroir vertical</source> - <translation type="unfinished"></translation> + <translation>Vertical mirror</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> <source>Propriétés...</source> - <translation type="unfinished"></translation> + <translation>Properties...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> <source>Taille</source> - <translation type="unfinished">Size</translation> + <translation>Size</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> <source>Coins arrondis</source> - <translation type="unfinished"></translation> + <translation>Rounded corners</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> <source>Édition des nœuds</source> - <translation type="unfinished"></translation> + <translation>Node editing</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> <source>Rotation/Inclinaison</source> - <translation type="unfinished"></translation> + <translation>Rotation/Skew</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> <source>Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation>Click: mode %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> - <translation type="unfinished"></translation> + <translation>Drag a corner/edge: resize (Ctrl = from center, Shift = proportions, Alt = detach into a polyline)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> <source> ; point turquoise : arc</source> - <translation type="unfinished"></translation> + <translation> ; turquoise point: arc</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> <source>Glisser une extrémité : la déplacer</source> - <translation type="unfinished"></translation> + <translation>Drag an endpoint: move it</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> <source>Glisser un point : le déplacer</source> - <translation type="unfinished"></translation> + <translation>Drag a point: move it</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> <source>Glisser le point violet : arrondir les coins</source> - <translation type="unfinished"></translation> + <translation>Drag the purple point: round the corners</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation>Drag a handle or the curve: deform (Alt = break the tangent); Alt+drag a corner point: create handles; right click: nearest node menu</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> <source>une extrémité</source> - <translation type="unfinished"></translation> + <translation>an endpoint</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> <source>un coin</source> - <translation type="unfinished"></translation> + <translation>a corner</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> <source>un point</source> - <translation type="unfinished"></translation> + <translation>a point</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> <source>Glisser %1 : rotation (Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Drag %1: rotation (Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> <source> ; un bord : inclinaison</source> - <translation type="unfinished"></translation> + <translation> ; an edge: skew</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> <source> ; point rouge : glisser pour repositionner le centre de rotation</source> - <translation type="unfinished"></translation> + <translation> ; red point: drag to reposition the rotation center</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> - <translation type="unfinished"></translation> + <translation> (Ctrl while dragging = free position, no grid snapping)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> <source> — Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation> — Click: mode %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> <source>Glisser : déplacer ce point</source> - <translation type="unfinished"></translation> + <translation>Drag: move this point</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> - <translation type="unfinished"></translation> + <translation>Drag: resize (Ctrl = from center + free position, Shift = proportions</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> <source>, Alt = détacher en polyligne</source> - <translation type="unfinished"></translation> + <translation>, Alt = detach into a polyline</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Drag: rotation (Ctrl = free position, Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Drag: skew (Ctrl = free position, Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Drag: reposition the rotation center (Ctrl = free position)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> <source>Glisser : arrondir les coins (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Drag: round the corners (Ctrl = free position)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Drag: adjust the arc (Ctrl = free position, Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> <source>Glisser : déplacer le point (Ctrl = position libre</source> - <translation type="unfinished"></translation> + <translation>Drag: move the point (Ctrl = free position</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> <source>, Alt = créer des poignées</source> - <translation type="unfinished"></translation> + <translation>, Alt = create handles</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> - <translation type="unfinished"></translation> + <translation>Drag: deform the curve (Ctrl = free position, Alt = break the tangent)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> @@ -11744,42 +11753,42 @@ Please add a new table or adjust the existing table to display all information.< <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> <source>Ajouter un point à une courbe</source> - <translation type="unfinished"></translation> + <translation>Add a point to a curve</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> <source>Supprimer un point d'une courbe</source> - <translation type="unfinished"></translation> + <translation>Delete a point from a curve</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> <source>Convertir %1 en polyligne</source> - <translation type="unfinished"></translation> + <translation>Convert %1 to a polyline</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> - <translation type="unfinished"></translation> + <translation>Mirror not possible: skew too extreme for this shape</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> <source>Miroir horizontal de %1</source> - <translation type="unfinished"></translation> + <translation>Horizontal mirror of %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> <source>Miroir vertical de %1</source> - <translation type="unfinished"></translation> + <translation>Vertical mirror of %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> <source>Modifier le type d'un nœud</source> - <translation type="unfinished"></translation> + <translation>Change the type of a node</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> <source>Deplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation>Move the rotation center</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> @@ -11799,7 +11808,7 @@ Please add a new table or adjust the existing table to display all information.< <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>un arc</source> - <translation type="unfinished"></translation> + <translation>an arc</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> @@ -11809,7 +11818,7 @@ Please add a new table or adjust the existing table to display all information.< <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> <source>une courbe</source> - <translation type="unfinished"></translation> + <translation>a curve</translation> </message> </context> <context> @@ -12808,29 +12817,29 @@ The other fields are not used.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> <source>Géométrie</source> - <translation type="unfinished"></translation> + <translation>Geometry</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> <source>Largeur</source> - <translation type="unfinished">Width</translation> + <translation>Width</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="46"/> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> <source>Hauteur</source> - <translation type="unfinished">Height</translation> + <translation>Height</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> <source>Angle</source> - <translation type="unfinished"></translation> + <translation>Angle</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> <source> °</source> - <translation type="unfinished"></translation> + <translation> °</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> @@ -12910,7 +12919,7 @@ The other fields are not used.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> <source>Forme fermée</source> - <translation type="unfinished"></translation> + <translation>Closed shape</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12920,17 +12929,17 @@ The other fields are not used.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> <source>Modifier la longueur d'une ligne</source> - <translation type="unfinished"></translation> + <translation>Change the length of a line</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> <source>Modifier la taille d'une forme</source> - <translation type="unfinished"></translation> + <translation>Change the size of a shape</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> <source>Modifier l'angle d'une forme</source> - <translation type="unfinished"></translation> + <translation>Change the angle of a shape</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> @@ -12961,17 +12970,17 @@ The other fields are not used.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> <source>Longueur</source> - <translation type="unfinished"></translation> + <translation>Length</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> <source>Rayon X</source> - <translation type="unfinished"></translation> + <translation>X radius</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> <source>Rayon Y</source> - <translation type="unfinished"></translation> + <translation>Y radius</translation> </message> </context> <context> @@ -15121,12 +15130,12 @@ The other fields are not used.</translation> <message> <location filename="../sources/editor/ui/terminaleditor.cpp" line="185"/> <source>NO (contact SW)</source> - <translation></translation> + <translation>NO (contact SW)</translation> </message> <message> <location filename="../sources/editor/ui/terminaleditor.cpp" line="186"/> <source>NC (contact SW)</source> - <translation></translation> + <translation>NC (contact SW)</translation> </message> <message> <location filename="../sources/editor/ui/terminaleditor.cpp" line="187"/> diff --git a/lang/qet_fr.qm b/lang/qet_fr.qm index 08c33cf05d295335b56c8f76f36dea70d6592534..a137bf9871c7178f7c12840331e1bec7297a78ce 100644 GIT binary patch delta 18072 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 ZPA(1b&&##!LeBF;!`ac$a6a<m{{YwcSeO6+ delta 17973 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 diff --git a/lang/qet_fr.ts b/lang/qet_fr.ts index 0682a8866..fedfed2b7 100644 --- a/lang/qet_fr.ts +++ b/lang/qet_fr.ts @@ -5102,22 +5102,22 @@ Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> <source>rgb(%1, %2, %3)</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> <source>Tolérance pour cette couleur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> <source>Retirer cette couleur</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> From fd3e21322296fbaee86e2b5e52c4f3afc92cacd0 Mon Sep 17 00:00:00 2001 From: Laurent Trinques <scorpio@qelectrotech.org> Date: Sun, 6 Sep 2026 10:12:20 +0200 Subject: [PATCH 38/95] Update pt_BR translations files, Co-authored-by: Claude --- lang/qet_pt_BR.qm | Bin 366211 -> 386099 bytes lang/qet_pt_BR.ts | 242 +++++++++++++++++++++++----------------------- 2 files changed, 121 insertions(+), 121 deletions(-) diff --git a/lang/qet_pt_BR.qm b/lang/qet_pt_BR.qm index 972b4365bf308ace8bff8869167306986ea9bb2e..58bfde1d6eaaa6d0cf65ca7a798be70bc7a4b0e1 100644 GIT binary patch delta 38234 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 E52;ZO0RR91 delta 23159 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 P98uuq5So|6;1~Kog`yqF diff --git a/lang/qet_pt_BR.ts b/lang/qet_pt_BR.ts index 337d31ef6..3d7d442a9 100644 --- a/lang/qet_pt_BR.ts +++ b/lang/qet_pt_BR.ts @@ -853,7 +853,7 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="57"/> <source>Cliquez pour choisir une couleur</source> - <translation type="unfinished"></translation> + <translation>Clique para escolher uma cor</translation> </message> </context> <context> @@ -1427,7 +1427,7 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/diagramevent/diagrameventaddimage.cpp" line="94"/> <source>Clic : positionner à la taille d'origine. Cliquer-glisser : positionner et redimensionner. Clic droit : pivoter de 90°. Ctrl+molette : ajuster la taille.</source> - <translation type="unfinished"></translation> + <translation>Clique: posicionar no tamanho original. Clicar e arrastar: posicionar e redimensionar. Clique direito: girar 90°. Ctrl+roda do mouse: ajustar o tamanho.</translation> </message> </context> <context> @@ -1435,7 +1435,7 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/diagramevent/diagrameventaddpath.cpp" line="92"/> <source>Clic: point anguleux. Cliquer-glisser: point courbe. Clic sur le premier point: fermer. Échap/Entrée: terminer. Clic droit: annuler le dernier point.</source> - <translation type="unfinished"></translation> + <translation>Clique: ponto anguloso. Clicar e arrastar: ponto curvo. Clique no primeiro ponto: fechar. Esc/Enter: concluir. Clique direito: desfazer o último ponto.</translation> </message> </context> <context> @@ -1443,37 +1443,37 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="451"/> <source>Clic gauche : positionner le point de départ (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Clique esquerdo: posicionar o ponto inicial (Ctrl = posição livre)</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="454"/> <source>Clic gauche : positionner le premier coin (Ctrl = point central, position libre)</source> - <translation type="unfinished"></translation> + <translation>Clique esquerdo: posicionar o primeiro canto (Ctrl = ponto central, posição livre)</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="456"/> <source>Clic gauche : positionner le premier point (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Clique esquerdo: posicionar o primeiro ponto (Ctrl = posição livre)</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="467"/> <source>Clic gauche : positionner le point final (Ctrl = position libre) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation>Clique esquerdo: posicionar o ponto final (Ctrl = posição livre); clique direito: cancelar</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="469"/> <source>Clic gauche : positionner le coin opposé (Maj = carré, Ctrl = depuis le centre + position libre, Ctrl+Maj = carré centré) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation>Clique esquerdo: posicionar o canto oposto (Shift = quadrado, Ctrl = a partir do centro + posição livre, Ctrl+Shift = quadrado centralizado); clique direito: cancelar</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="472"/> <source>Clic gauche : positionner le coin opposé (Maj = cercle, Ctrl = depuis le centre + position libre, Ctrl+Maj = cercle centré) ; clic droit : annuler</source> - <translation type="unfinished"></translation> + <translation>Clique esquerdo: posicionar o canto oposto (Shift = círculo, Ctrl = a partir do centro + posição livre, Ctrl+Shift = círculo centralizado); clique direito: cancelar</translation> </message> <message> <location filename="../sources/diagramevent/diagrameventaddshape.cpp" line="475"/> <source>Clic gauche : point suivant ; double-clic ou Entrée : terminer ; clic droit : annuler le dernier point</source> - <translation type="unfinished"></translation> + <translation>Clique esquerdo: próximo ponto; duplo clique ou Enter: concluir; clique direito: desfazer o último ponto</translation> </message> </context> <context> @@ -1481,72 +1481,72 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> <source>redimensionner</source> - <translation type="unfinished"></translation> + <translation>redimensionar</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="436"/> <source>pivoter/incliner</source> - <translation type="unfinished"></translation> + <translation>girar/inclinar</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="452"/> <source>Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation>Clique: modo %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="490"/> <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = conserver les proportions)</source> - <translation type="unfinished"></translation> + <translation>Arraste um canto/borda: redimensionar (Ctrl = a partir do centro, Shift = manter proporções)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="491"/> <source>Glisser un coin : pivoter (Maj = par pas de 15°) ; glisser un bord : incliner (Maj = par pas de 15°) ; point rouge : déplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation>Arraste um canto: girar (Shift = em passos de 15°); arraste uma borda: inclinar (Shift = em passos de 15°); ponto vermelho: mover o centro de rotação</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> <source> -- %1 : mode %2</source> - <translation type="unfinished"></translation> + <translation> -- %1: modo %2</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="492"/> <source>Cliquer</source> - <translation type="unfinished"></translation> + <translation>Clique</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="559"/> <source>Glisser : redimensionner (Maj = conserver les proportions, Ctrl = depuis le centre)</source> - <translation type="unfinished"></translation> + <translation>Arraste: redimensionar (Shift = manter proporções, Ctrl = a partir do centro)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="560"/> <source>Glisser : pivoter (Maj = par pas de 15°)</source> - <translation type="unfinished"></translation> + <translation>Arraste: girar (Shift = em passos de 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="561"/> <source>Glisser : incliner (Maj = par pas de 15°)</source> - <translation type="unfinished"></translation> + <translation>Arraste: inclinar (Shift = em passos de 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="562"/> <source>Glisser : déplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation>Arraste: mover o centro de rotação</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="831"/> <source>Déplacer le centre de rotation d'une image</source> - <translation type="unfinished"></translation> + <translation>Mover o centro de rotação de uma imagem</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="841"/> <source>Modifier une image</source> - <translation type="unfinished"></translation> + <translation>Editar uma imagem</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1028"/> <source>Restaurer les proportions d'une image</source> - <translation type="unfinished"></translation> + <translation>Restaurar as proporções de uma imagem</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1109"/> @@ -1556,37 +1556,37 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1382"/> <source>Remplacer l'image...</source> - <translation type="unfinished"></translation> + <translation>Substituir a imagem...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1385"/> <source>Couleur transparente...</source> - <translation type="unfinished"></translation> + <translation>Cor transparente...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1388"/> <source>Rogner...</source> - <translation type="unfinished"></translation> + <translation>Recortar...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1391"/> <source>Miroir horizontal</source> - <translation type="unfinished"></translation> + <translation>Espelhar horizontalmente</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1392"/> <source>Miroir vertical</source> - <translation type="unfinished"></translation> + <translation>Espelhar verticalmente</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1396"/> <source>Restaurer les proportions</source> - <translation type="unfinished"></translation> + <translation>Restaurar proporções</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1400"/> <source>Propriétés...</source> - <translation type="unfinished"></translation> + <translation>Propriedades...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1431"/> @@ -1596,7 +1596,7 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1432"/> <source>Image Files (*.png *.jpg *.jpeg *.bmp *.svg)</source> - <translation type="unfinished"></translation> + <translation>Arquivos de imagem (*.png *.jpg *.jpeg *.bmp *.svg)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1439"/> @@ -1611,27 +1611,27 @@ Nota: Estas opções NÃO permitem ou bloqueiam a autonumeração, apenas a sua <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1456"/> <source>Remplacer une image</source> - <translation type="unfinished"></translation> + <translation>Substituir uma imagem</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir horizontal d'une image</source> - <translation type="unfinished"></translation> + <translation>Espelhamento horizontal de uma imagem</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1499"/> <source>Miroir vertical d'une image</source> - <translation type="unfinished"></translation> + <translation>Espelhamento vertical de uma imagem</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1548"/> <source>Définir une couleur transparente</source> - <translation type="unfinished"></translation> + <translation>Definir uma cor transparente</translation> </message> <message> <location filename="../sources/qetgraphicsitem/diagramimageitem.cpp" line="1642"/> <source>Rogner une image</source> - <translation type="unfinished"></translation> + <translation>Recortar uma imagem</translation> </message> </context> <context> @@ -5021,12 +5021,12 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <message> <location filename="../sources/ui/imagecropdialog.cpp" line="257"/> <source>Rogner l'image</source> - <translation type="unfinished"></translation> + <translation>Recortar a imagem</translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="261"/> <source>Faites glisser les poignées, ou l'intérieur du cadre, pour ajuster la zone à conserver.</source> - <translation type="unfinished"></translation> + <translation>Arraste as alças, ou o interior do quadro, para ajustar a área a ser mantida.</translation> </message> <message> <location filename="../sources/ui/imagecropdialog.cpp" line="264"/> @@ -5036,7 +5036,7 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <message> <location filename="../sources/ui/imagecropdialog.cpp" line="265"/> <source>Revenir à l'image complète, sans rognage</source> - <translation type="unfinished"></translation> + <translation>Voltar à imagem completa, sem recorte</translation> </message> </context> <context> @@ -5055,13 +5055,13 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <location filename="../sources/ui/imagepropertieswidget.ui" line="30"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="66"/> <source> %</source> - <translation type="unfinished"></translation> + <translation> %</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="46"/> <location filename="../sources/ui/imagepropertieswidget.cpp" line="238"/> <source>Verrouillé : modifier la largeur ou la hauteur ajuste l'autre pour conserver les proportions. Cliquer pour déverrouiller.</source> - <translation type="unfinished"></translation> + <translation>Bloqueado: alterar a largura ou a altura ajusta a outra para manter as proporções. Clique para desbloquear.</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="59"/> @@ -5071,29 +5071,29 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="82"/> <source>Restaurer les proportions</source> - <translation type="unfinished"></translation> + <translation>Restaurar proporções</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="89"/> <source>Angle</source> - <translation type="unfinished"></translation> + <translation>Ângulo</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="96"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="119"/> <location filename="../sources/ui/imagepropertieswidget.ui" line="142"/> <source> °</source> - <translation type="unfinished"></translation> + <translation> °</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="112"/> <source>Inclinaison X</source> - <translation type="unfinished"></translation> + <translation>Inclinação X</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="135"/> <source>Inclinaison Y</source> - <translation type="unfinished"></translation> + <translation>Inclinação Y</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.ui" line="158"/> @@ -5103,28 +5103,28 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="188"/> <source>Modifier la largeur d'une image</source> - <translation type="unfinished"></translation> + <translation>Alterar a largura de uma imagem</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="189"/> <source>Modifier la hauteur d'une image</source> - <translation type="unfinished"></translation> + <translation>Alterar a altura de uma imagem</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="190"/> <source>Modifier l'angle d'une image</source> - <translation type="unfinished"></translation> + <translation>Alterar o ângulo de uma imagem</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="191"/> <location filename="../sources/ui/imagepropertieswidget.cpp" line="192"/> <source>Modifier l'inclinaison d'une image</source> - <translation type="unfinished"></translation> + <translation>Alterar a inclinação de uma imagem</translation> </message> <message> <location filename="../sources/ui/imagepropertieswidget.cpp" line="239"/> <source>Déverrouillé : largeur et hauteur peuvent être modifiées indépendamment. Cliquer pour verrouiller.</source> - <translation type="unfinished"></translation> + <translation>Desbloqueado: largura e altura podem ser alteradas independentemente. Clique para bloquear.</translation> </message> </context> <context> @@ -5132,12 +5132,12 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="101"/> <source>Couleur transparente</source> - <translation type="unfinished"></translation> + <translation>Cor transparente</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="118"/> <source>Image source</source> - <translation type="unfinished"></translation> + <translation>Imagem de origem</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="119"/> @@ -5147,27 +5147,27 @@ Qualquer valor diferente de ‘Sem arredondamento’ pode causar erros na render <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="239"/> <source>rgb(%1, %2, %3)</source> - <translation type="unfinished"></translation> + <translation>rgb(%1, %2, %3)</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="244"/> <source>Tolérance pour cette couleur</source> - <translation type="unfinished"></translation> + <translation>Tolerância para esta cor</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="249"/> <source>Retirer cette couleur</source> - <translation type="unfinished"></translation> + <translation>Remover esta cor</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="260"/> <source>Cliquez sur l'image pour ajouter une couleur. Ajustez la tolérance de chaque couleur avec son curseur, ou cliquez sur × pour la retirer.</source> - <translation type="unfinished"></translation> + <translation>Clique na imagem para adicionar uma cor. Ajuste a tolerância de cada cor com seu controle deslizante, ou clique em × para removê-la.</translation> </message> <message> <location filename="../sources/ui/imagetransparentcolordialog.cpp" line="259"/> <source>Cliquez sur l'image pour choisir une couleur</source> - <translation type="unfinished"></translation> + <translation>Clique na imagem para escolher uma cor</translation> </message> </context> <context> @@ -8071,7 +8071,7 @@ Opções disponíveis: <message> <location filename="../sources/qetdiagrameditor.cpp" line="745"/> <source>Ajouter une courbe</source> - <translation type="unfinished"></translation> + <translation>Adicionar uma curva</translation> </message> <message> <location filename="../sources/qetdiagrameditor.cpp" line="746"/> @@ -8116,7 +8116,7 @@ Opções disponíveis: <message> <location filename="../sources/qetdiagrameditor.cpp" line="757"/> <source>Ajoute une courbe de Bézier sur le folio actuel</source> - <translation type="unfinished"></translation> + <translation>Adiciona uma curva de Bézier ao fólio atual</translation> </message> <message> <location filename="../sources/qetdiagrameditor.cpp" line="758"/> @@ -11478,7 +11478,7 @@ Faça o download seguindo o link abaixo e descompacte-o na pasta de instalação <message> <location filename="../sources/undocommand/promoteshapecommand.cpp" line="26"/> <source>Transformer %1</source> - <translation type="unfinished"></translation> + <translation>Transformar %1</translation> </message> </context> <context> @@ -11540,52 +11540,52 @@ Adicione uma nova tabela ou ajuste a tabela existente para exibir todas as infor <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="866"/> <source>Déformer une courbe</source> - <translation type="unfinished"></translation> + <translation>Deformar uma curva</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1071"/> <source>Nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation>Nó mais próximo</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1072"/> <source>Lisse</source> - <translation type="unfinished"></translation> + <translation>Suave</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1073"/> <source>Symétrique</source> - <translation type="unfinished"></translation> + <translation>Simétrico</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1074"/> <source>Anguleux</source> - <translation type="unfinished"></translation> + <translation>Anguloso</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1093"/> <source>Supprimer le nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation>Excluir o nó mais próximo</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1100"/> <source>Convertir en polyligne</source> - <translation type="unfinished"></translation> + <translation>Converter em polilinha</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1104"/> <source>Miroir horizontal</source> - <translation type="unfinished"></translation> + <translation>Espelhar horizontalmente</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1105"/> <source>Miroir vertical</source> - <translation type="unfinished"></translation> + <translation>Espelhar verticalmente</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1110"/> <source>Propriétés...</source> - <translation type="unfinished"></translation> + <translation>Propriedades...</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1179"/> @@ -11595,147 +11595,147 @@ Adicione uma nova tabela ou ajuste a tabela existente para exibir todas as infor <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1180"/> <source>Coins arrondis</source> - <translation type="unfinished"></translation> + <translation>Cantos arredondados</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1181"/> <source>Édition des nœuds</source> - <translation type="unfinished"></translation> + <translation>Edição de nós</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1182"/> <source>Rotation/Inclinaison</source> - <translation type="unfinished"></translation> + <translation>Rotação/Inclinação</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1200"/> <source>Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation>Clique: modo %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1280"/> <source>Glisser un coin/bord : redimensionner (Ctrl = depuis le centre, Maj = proportions, Alt = détacher en polyligne)</source> - <translation type="unfinished"></translation> + <translation>Arraste um canto/borda: redimensionar (Ctrl = a partir do centro, Shift = proporções, Alt = separar em polilinha)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1283"/> <source> ; point turquoise : arc</source> - <translation type="unfinished"></translation> + <translation> ; ponto turquesa: arco</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1287"/> <source>Glisser une extrémité : la déplacer</source> - <translation type="unfinished"></translation> + <translation>Arraste uma extremidade: movê-la</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1291"/> <source>Glisser un point : le déplacer</source> - <translation type="unfinished"></translation> + <translation>Arraste um ponto: movê-lo</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1296"/> <source>Glisser le point violet : arrondir les coins</source> - <translation type="unfinished"></translation> + <translation>Arraste o ponto roxo: arredondar os cantos</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1300"/> <source>Glisser une poignée ou la courbe : déformer (Alt = briser la tangente) ; Alt+glisser un point anguleux : créer des poignées ; clic droit : menu du nœud le plus proche</source> - <translation type="unfinished"></translation> + <translation>Arraste uma alça ou a curva: deformar (Alt = quebrar a tangente); Alt+arrastar um ponto anguloso: criar alças; clique direito: menu do nó mais próximo</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1311"/> <source>une extrémité</source> - <translation type="unfinished"></translation> + <translation>uma extremidade</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1312"/> <source>un coin</source> - <translation type="unfinished"></translation> + <translation>um canto</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1313"/> <source>un point</source> - <translation type="unfinished"></translation> + <translation>um ponto</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1314"/> <source>Glisser %1 : rotation (Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Arrastar %1: rotação (Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1316"/> <source> ; un bord : inclinaison</source> - <translation type="unfinished"></translation> + <translation> ; uma borda: inclinação</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1317"/> <source> ; point rouge : glisser pour repositionner le centre de rotation</source> - <translation type="unfinished"></translation> + <translation> ; ponto vermelho: arraste para reposicionar o centro de rotação</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1329"/> <source> (Ctrl pendant le glissement = position libre, sans accrochage à la grille)</source> - <translation type="unfinished"></translation> + <translation> (Ctrl durante o arraste = posição livre, sem ajuste à grade)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1330"/> <source> — Cliquer : mode %1</source> - <translation type="unfinished"></translation> + <translation> — Clique: modo %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1360"/> <source>Glisser : déplacer ce point</source> - <translation type="unfinished"></translation> + <translation>Arraste: mover este ponto</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1361"/> <source>Glisser : redimensionner (Ctrl = depuis le centre + position libre, Maj = proportions</source> - <translation type="unfinished"></translation> + <translation>Arraste: redimensionar (Ctrl = a partir do centro + posição livre, Shift = proporções</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1363"/> <source>, Alt = détacher en polyligne</source> - <translation type="unfinished"></translation> + <translation>, Alt = separar em polilinha</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1368"/> <source>Glisser : rotation (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Arraste: rotação (Ctrl = posição livre, Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1370"/> <source>Glisser : inclinaison (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Arraste: inclinação (Ctrl = posição livre, Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1372"/> <source>Glisser : repositionner le centre de rotation (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Arraste: reposicionar o centro de rotação (Ctrl = posição livre)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1374"/> <source>Glisser : arrondir les coins (Ctrl = position libre)</source> - <translation type="unfinished"></translation> + <translation>Arraste: arredondar os cantos (Ctrl = posição livre)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1376"/> <source>Glisser : ajuster l'arc (Ctrl = position libre, Maj = 15°)</source> - <translation type="unfinished"></translation> + <translation>Arraste: ajustar o arco (Ctrl = posição livre, Shift = 15°)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1379"/> <source>Glisser : déplacer le point (Ctrl = position libre</source> - <translation type="unfinished"></translation> + <translation>Arraste: mover o ponto (Ctrl = posição livre</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1381"/> <source>, Alt = créer des poignées</source> - <translation type="unfinished"></translation> + <translation>, Alt = criar alças</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1387"/> <source>Glisser : déformer la courbe (Ctrl = position libre, Alt = briser la tangente)</source> - <translation type="unfinished"></translation> + <translation>Arraste: deformar a curva (Ctrl = posição livre, Alt = quebrar a tangente)</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1694"/> @@ -11750,42 +11750,42 @@ Adicione uma nova tabela ou ajuste a tabela existente para exibir todas as infor <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1896"/> <source>Ajouter un point à une courbe</source> - <translation type="unfinished"></translation> + <translation>Adicionar um ponto a uma curva</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1925"/> <source>Supprimer un point d'une courbe</source> - <translation type="unfinished"></translation> + <translation>Excluir um ponto de uma curva</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="1953"/> <source>Convertir %1 en polyligne</source> - <translation type="unfinished"></translation> + <translation>Converter %1 em polilinha</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2031"/> <source>Miroir impossible : inclinaison trop extrême pour cette forme</source> - <translation type="unfinished"></translation> + <translation>Espelhamento impossível: inclinação extrema demais para esta forma</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> <source>Miroir horizontal de %1</source> - <translation type="unfinished"></translation> + <translation>Espelhamento horizontal de %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2046"/> <source>Miroir vertical de %1</source> - <translation type="unfinished"></translation> + <translation>Espelhamento vertical de %1</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2119"/> <source>Modifier le type d'un nœud</source> - <translation type="unfinished"></translation> + <translation>Alterar o tipo de um nó</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2575"/> <source>Deplacer le centre de rotation</source> - <translation type="unfinished"></translation> + <translation>Mover o centro de rotação</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2634"/> @@ -11810,7 +11810,7 @@ Adicione uma nova tabela ou ajuste a tabela existente para exibir todas as infor <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2981"/> <source>un arc</source> - <translation type="unfinished"></translation> + <translation>um arco</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2982"/> @@ -11820,7 +11820,7 @@ Adicione uma nova tabela ou ajuste a tabela existente para exibir todas as infor <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2983"/> <source>une courbe</source> - <translation type="unfinished"></translation> + <translation>uma curva</translation> </message> <message> <location filename="../sources/qetgraphicsitem/qetshapeitem.cpp" line="2984"/> @@ -12825,7 +12825,7 @@ Os outros campos não são usados.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="20"/> <source>Géométrie</source> - <translation type="unfinished"></translation> + <translation>Geometria</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="26"/> @@ -12842,12 +12842,12 @@ Os outros campos não são usados.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="66"/> <source>Angle</source> - <translation type="unfinished"></translation> + <translation>Ângulo</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="82"/> <source> °</source> - <translation type="unfinished"></translation> + <translation> °</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="205"/> @@ -12927,7 +12927,7 @@ Os outros campos não são usados.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.ui" line="305"/> <source>Forme fermée</source> - <translation type="unfinished"></translation> + <translation>Forma fechada</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.h" line="50"/> @@ -12937,17 +12937,17 @@ Os outros campos não são usados.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="183"/> <source>Modifier la longueur d'une ligne</source> - <translation type="unfinished"></translation> + <translation>Alterar o comprimento de uma linha</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="202"/> <source>Modifier la taille d'une forme</source> - <translation type="unfinished"></translation> + <translation>Alterar o tamanho de uma forma</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="215"/> <source>Modifier l'angle d'une forme</source> - <translation type="unfinished"></translation> + <translation>Alterar o ângulo de uma forma</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="236"/> @@ -12978,17 +12978,17 @@ Os outros campos não são usados.</translation> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="433"/> <source>Longueur</source> - <translation type="unfinished"></translation> + <translation>Comprimento</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="442"/> <source>Rayon X</source> - <translation type="unfinished"></translation> + <translation>Raio X</translation> </message> <message> <location filename="../sources/ui/shapegraphicsitempropertieswidget.cpp" line="443"/> <source>Rayon Y</source> - <translation type="unfinished"></translation> + <translation>Raio Y</translation> </message> </context> <context> From 825a1a594d88f1e921d0d9fc17b455f6d50fd958 Mon Sep 17 00:00:00 2001 From: Jeff Patterson <jeff_patterson@outlook.com> Date: Sun, 6 Sep 2026 06:48:45 -0500 Subject: [PATCH 39/95] Fix element editor Mirror and Flip to reflect the selection in place Mirror (M) and Flip (F) in the element editor reflected the selected parts across the element origin: every part's mirror() and flip() negated the scene x or y coordinate. A part drawn to the right of the origin landed the same distance to the left, so the selection jumped to the other side of the canvas instead of turning around. MirrorElementsCommand and FlipElementsCommand now compute the united scene bounding rectangle of the selected items and reflect across the vertical or horizontal line through its center. The center is snapped to the nearest half of the diagram grid, so points that were on the grid stay on the grid after the reflection. Terminals in particular keep their grid alignment. Each part's mirror() and flip() takes the axis coordinate as a parameter with a default of 0, so the previous behavior remains available to any other caller. The command stores the axis when it is created and undo reapplies the same reflection, which is its own inverse, so the existing undo path is unchanged. Parts covered: PartArc, PartDynamicTextField, PartEllipse, PartLine, PartPolygon, PartRectangle, PartTerminal, PartText. Fixes #812 --- sources/editor/editorcommands.cpp | 56 +++++++++++++------ sources/editor/editorcommands.h | 14 +++++ sources/editor/graphicspart/partarc.cpp | 8 +-- sources/editor/graphicspart/partarc.h | 4 +- .../graphicspart/partdynamictextfield.cpp | 8 +-- .../graphicspart/partdynamictextfield.h | 4 +- sources/editor/graphicspart/partellipse.cpp | 8 +-- sources/editor/graphicspart/partellipse.h | 4 +- sources/editor/graphicspart/partline.cpp | 12 ++-- sources/editor/graphicspart/partline.h | 4 +- sources/editor/graphicspart/partpolygon.cpp | 8 +-- sources/editor/graphicspart/partpolygon.h | 4 +- sources/editor/graphicspart/partrectangle.cpp | 8 +-- sources/editor/graphicspart/partrectangle.h | 4 +- sources/editor/graphicspart/partterminal.cpp | 8 +-- sources/editor/graphicspart/partterminal.h | 4 +- sources/editor/graphicspart/parttext.cpp | 8 +-- sources/editor/graphicspart/parttext.h | 4 +- 18 files changed, 104 insertions(+), 66 deletions(-) diff --git a/sources/editor/editorcommands.cpp b/sources/editor/editorcommands.cpp index 7646ab88d..62bc2a013 100644 --- a/sources/editor/editorcommands.cpp +++ b/sources/editor/editorcommands.cpp @@ -16,6 +16,7 @@ along with QElectroTech. If not, see <http://www.gnu.org/licenses/>. */ #include "editorcommands.h" +#include "../diagram.h" /** @brief ElementEditionCommand::ElementEditionCommand @@ -666,10 +667,32 @@ void RotateFineElementsCommand::redo() } +/** + @brief selectionCenter + @param items + @return the center of the united scene bounding rect of items, + snapped to the nearest half of the diagram grid. Mirroring across a + half-grid line keeps points that were on the grid on the grid. +*/ +static QPointF selectionCenter(const QList<QGraphicsItem *> &items) +{ + QRectF bounding; + for (auto *item : items) { + bounding = bounding.united(item->sceneBoundingRect()); + } + QPointF center = bounding.center(); + const qreal half_x = Diagram::xGrid / 2.0; + const qreal half_y = Diagram::yGrid / 2.0; + center.setX(qRound(center.x() / half_x) * half_x); + center.setY(qRound(center.y() / half_y) * half_y); + return center; +} + MirrorElementsCommand::MirrorElementsCommand(ElementScene *scene, QUndoCommand *parent) : ElementEditionCommand(QObject::tr("Miroir de sélection", "undo caption"), scene, nullptr, parent) { m_items = scene->selectedItems(); + m_axis_x = selectionCenter(m_items).x(); } /** @@ -680,28 +703,28 @@ void MirrorElementsCommand::redo() foreach (auto *item, m_items) { if (item->type() == PartText::Type) { PartText* staticText = qgraphicsitem_cast<PartText*>(item); - staticText->mirror(); + staticText->mirror(m_axis_x); } else if (item->type() == PartDynamicTextField::Type) { PartDynamicTextField* dyntext = qgraphicsitem_cast<PartDynamicTextField*>(item); - dyntext->mirror(); + dyntext->mirror(m_axis_x); } else if (item->type() == PartArc::Type) { PartArc* arc = qgraphicsitem_cast<PartArc*>(item); - arc->mirror(); + arc->mirror(m_axis_x); } else if (item->type() == PartEllipse::Type) { PartEllipse* ellipse = qgraphicsitem_cast<PartEllipse*>(item); - ellipse->mirror(); + ellipse->mirror(m_axis_x); } else if (item->type() == PartLine::Type) { PartLine* line = qgraphicsitem_cast<PartLine*>(item); - line->mirror(); + line->mirror(m_axis_x); } else if (item->type() == PartPolygon::Type) { PartPolygon* poly = qgraphicsitem_cast<PartPolygon*>(item); - poly->mirror(); + poly->mirror(m_axis_x); } else if (item->type() == PartRectangle::Type) { PartRectangle* rect = qgraphicsitem_cast<PartRectangle*>(item); - rect->mirror(); + rect->mirror(m_axis_x); } else if (item->type() == PartTerminal::Type) { PartTerminal* term = qgraphicsitem_cast<PartTerminal*>(item); - term->mirror(); + term->mirror(m_axis_x); } } } @@ -718,6 +741,7 @@ FlipElementsCommand::FlipElementsCommand(ElementScene *scene, QUndoCommand *pare ElementEditionCommand(QObject::tr("Retourner la sélection", "undo caption"), scene, nullptr, parent) { m_items = scene->selectedItems(); + m_axis_y = selectionCenter(m_items).y(); } /** @@ -728,28 +752,28 @@ void FlipElementsCommand::redo() foreach (auto *item, m_items) { if (item->type() == PartText::Type) { PartText* staticText = qgraphicsitem_cast<PartText*>(item); - staticText->flip(); + staticText->flip(m_axis_y); } else if (item->type() == PartDynamicTextField::Type) { PartDynamicTextField* dyntext = qgraphicsitem_cast<PartDynamicTextField*>(item); - dyntext->flip(); + dyntext->flip(m_axis_y); } else if (item->type() == PartArc::Type) { PartArc* arc = qgraphicsitem_cast<PartArc*>(item); - arc->flip(); + arc->flip(m_axis_y); } else if (item->type() == PartEllipse::Type) { PartEllipse* ellipse = qgraphicsitem_cast<PartEllipse*>(item); - ellipse->flip(); + ellipse->flip(m_axis_y); } else if (item->type() == PartLine::Type) { PartLine* line = qgraphicsitem_cast<PartLine*>(item); - line->flip(); + line->flip(m_axis_y); } else if (item->type() == PartPolygon::Type) { PartPolygon* poly = qgraphicsitem_cast<PartPolygon*>(item); - poly->flip(); + poly->flip(m_axis_y); } else if (item->type() == PartRectangle::Type) { PartRectangle* rect = qgraphicsitem_cast<PartRectangle*>(item); - rect->flip(); + rect->flip(m_axis_y); } else if (item->type() == PartTerminal::Type) { PartTerminal* term = qgraphicsitem_cast<PartTerminal*>(item); - term->flip(); + term->flip(m_axis_y); } } } diff --git a/sources/editor/editorcommands.h b/sources/editor/editorcommands.h index b920b47d9..e5a811a83 100644 --- a/sources/editor/editorcommands.h +++ b/sources/editor/editorcommands.h @@ -279,6 +279,12 @@ private: }; +/** + @brief The MirrorElementsCommand class + Mirror the selected parts horizontally (left <-> right) across the + vertical line through the center of the selection, so the selection + keeps its place in the scene. +*/ class MirrorElementsCommand : public ElementEditionCommand { public: @@ -288,8 +294,15 @@ public: private: ElementScene *m_scene =nullptr; QList<QGraphicsItem*> m_items; + qreal m_axis_x = 0; }; +/** + @brief The FlipElementsCommand class + Flip the selected parts vertically (top <-> bottom) across the + horizontal line through the center of the selection, so the selection + keeps its place in the scene. +*/ class FlipElementsCommand : public ElementEditionCommand { public: @@ -299,6 +312,7 @@ public: private: ElementScene *m_scene =nullptr; QList<QGraphicsItem*> m_items; + qreal m_axis_y = 0; }; #endif diff --git a/sources/editor/graphicspart/partarc.cpp b/sources/editor/graphicspart/partarc.cpp index 596f19f37..fb06bdb83 100644 --- a/sources/editor/graphicspart/partarc.cpp +++ b/sources/editor/graphicspart/partarc.cpp @@ -197,13 +197,13 @@ qreal PartArc::rotation() const { return qRound(m_rot * 100.0) / 100.0; } -void PartArc::flip() { +void PartArc::flip(qreal axis_y) { m_start_angle = (-1) * m_start_angle; m_span_angle = (-1) * m_span_angle; while (m_start_angle < 0) { m_start_angle += (360*16); } while (m_start_angle >= (360*16)) { m_start_angle -= (360*16); } auto p1 = mapToScene(m_rect.x(),m_rect.y()); - p1.setY(((-1.0) * p1.y()) - m_rect.height()); + p1.setY(2 * axis_y - p1.y() - m_rect.height()); p1 = mapFromScene(p1.x(),p1.y()); m_rect = QRectF(m_rect.x(), p1.y(), m_rect.width(), m_rect.height()); prepareGeometryChange(); @@ -211,13 +211,13 @@ void PartArc::flip() { emit rectChanged(); } -void PartArc::mirror() { +void PartArc::mirror(qreal axis_x) { m_start_angle = (180.0 * 16) - m_start_angle; m_span_angle = (-1) * m_span_angle; while (m_start_angle < 0) { m_start_angle += (360*16); } while (m_start_angle >= (360*16)) { m_start_angle -= (360*16); } auto p1 = mapToScene(m_rect.x(),m_rect.y()); - p1.setX(((-1.0) * p1.x()) - m_rect.width()); + p1.setX(2 * axis_x - p1.x() - m_rect.width()); p1 = mapFromScene(p1.x(), p1.y()); m_rect = QRectF(p1.x(), m_rect.y(), m_rect.width(), m_rect.height()); prepareGeometryChange(); diff --git a/sources/editor/graphicspart/partarc.h b/sources/editor/graphicspart/partarc.h index bc6f51301..cd0878120 100644 --- a/sources/editor/graphicspart/partarc.h +++ b/sources/editor/graphicspart/partarc.h @@ -62,8 +62,8 @@ class PartArc : public AbstractPartEllipse QRectF sceneGeometricRect() const override; void setRotation(qreal angle); qreal rotation() const; - void flip(); - void mirror(); + void flip(qreal axis_y = 0); + void mirror(qreal axis_x = 0); void addHandler() override; void removeHandler() override; diff --git a/sources/editor/graphicspart/partdynamictextfield.cpp b/sources/editor/graphicspart/partdynamictextfield.cpp index d04ac6f5b..c65c955df 100644 --- a/sources/editor/graphicspart/partdynamictextfield.cpp +++ b/sources/editor/graphicspart/partdynamictextfield.cpp @@ -74,19 +74,19 @@ void PartDynamicTextField::setRotation(qreal angle) { setPos(QTransform().rotate(diffAngle).map(pos())); } -void PartDynamicTextField::mirror() { +void PartDynamicTextField::mirror(qreal axis_x) { // at first: rotate the text: QGraphicsObject::setRotation(QET::correctAngle(360-rotation(), true)); // then see, where we need to re-position depending on the angle! qreal rot = qRound(QET::correctAngle(rotation(), true)); qreal c = qCos(qDegreesToRadians(rot)); qreal s = qSin(qDegreesToRadians(rot)); - qreal x = (-1) * pos().x() - c * boundingRect().width(); + qreal x = 2 * axis_x - pos().x() - c * boundingRect().width(); qreal y = pos().y() - s * boundingRect().width(); setPos(x, y); } -void PartDynamicTextField::flip() { +void PartDynamicTextField::flip(qreal axis_y) { // at first: rotate the text: QGraphicsObject::setRotation(QET::correctAngle(360-rotation(), true)); // then see, where we need to re-position depending on the angle! @@ -94,7 +94,7 @@ void PartDynamicTextField::flip() { qreal c = qCos(qDegreesToRadians(rot)); qreal s = qSin(qDegreesToRadians(rot)); qreal x = pos().x() + s * boundingRect().height(); - qreal y = (-1) * pos().y() - c * boundingRect().height(); + qreal y = 2 * axis_y - pos().y() - c * boundingRect().height(); setPos(x, y); } diff --git a/sources/editor/graphicspart/partdynamictextfield.h b/sources/editor/graphicspart/partdynamictextfield.h index 4fdf0d700..1b730639b 100644 --- a/sources/editor/graphicspart/partdynamictextfield.h +++ b/sources/editor/graphicspart/partdynamictextfield.h @@ -106,8 +106,8 @@ class PartDynamicTextField : public QGraphicsTextItem, public CustomElementPart bool rotationPointCenter() const; void setRotation(qreal angle); - void mirror(); - void flip(); + void mirror(qreal axis_x = 0); + void flip(qreal axis_y = 0); protected: diff --git a/sources/editor/graphicspart/partellipse.cpp b/sources/editor/graphicspart/partellipse.cpp index 4cf3a4f10..dc19d6102 100644 --- a/sources/editor/graphicspart/partellipse.cpp +++ b/sources/editor/graphicspart/partellipse.cpp @@ -256,9 +256,9 @@ qreal PartEllipse::rotation() const { return qRound(m_rot * 100.0) / 100.0; } -void PartEllipse::flip() { +void PartEllipse::flip(qreal axis_y) { auto p1 = mapToScene(m_rect.x(), m_rect.y()); - p1.setY(((-1.0) * p1.y()) - m_rect.height()); + p1.setY(2 * axis_y - p1.y() - m_rect.height()); p1 = mapFromScene(p1.x(), p1.y()); m_rect = QRectF(p1.x(), p1.y(), m_rect.width(), m_rect.height()); prepareGeometryChange(); @@ -266,9 +266,9 @@ void PartEllipse::flip() { emit rectChanged(); } -void PartEllipse::mirror() { +void PartEllipse::mirror(qreal axis_x) { auto p1 = mapToScene(m_rect.x(), m_rect.y()); - p1.setX(((-1.0) * p1.x()) - m_rect.width()); + p1.setX(2 * axis_x - p1.x() - m_rect.width()); p1 = mapFromScene(p1.x(), p1.y()); m_rect = QRectF(p1.x(), p1.y(), m_rect.width(), m_rect.height()); prepareGeometryChange(); diff --git a/sources/editor/graphicspart/partellipse.h b/sources/editor/graphicspart/partellipse.h index e566a1f16..477aa3e8c 100644 --- a/sources/editor/graphicspart/partellipse.h +++ b/sources/editor/graphicspart/partellipse.h @@ -62,8 +62,8 @@ class PartEllipse : public AbstractPartEllipse void setRect(const QRectF &rect) override {AbstractPartEllipse::setRect(rect); adjustHandlerPos();} void setRotation(qreal angle); qreal rotation() const; - void flip(); - void mirror(); + void flip(qreal axis_y = 0); + void mirror(qreal axis_x = 0); void addHandler() override; void removeHandler() override; diff --git a/sources/editor/graphicspart/partline.cpp b/sources/editor/graphicspart/partline.cpp index c0d86bc57..cf71406b1 100644 --- a/sources/editor/graphicspart/partline.cpp +++ b/sources/editor/graphicspart/partline.cpp @@ -590,11 +590,11 @@ qreal PartLine::rotation() const { return qRound(m_rot * 100.0) / 100.0; } -void PartLine::flip() { +void PartLine::flip(qreal axis_y) { auto p1 = mapToScene(m_line.p1()); auto p2 = mapToScene(m_line.p2()); - p1 = QPointF(p1.x(), (-1) * p1.y()); - p2 = QPointF(p2.x(), (-1) * p2.y()); + p1 = QPointF(p1.x(), 2 * axis_y - p1.y()); + p2 = QPointF(p2.x(), 2 * axis_y - p2.y()); m_line.setP1(mapFromScene(p1)); m_line.setP2(mapFromScene(p2)); setLine(m_line); @@ -603,11 +603,11 @@ void PartLine::flip() { emit lineChanged(); } -void PartLine::mirror() { +void PartLine::mirror(qreal axis_x) { auto p1 = mapToScene(m_line.p1()); auto p2 = mapToScene(m_line.p2()); - p1 = QPointF((-1) * p1.x(), p1.y()); - p2 = QPointF((-1) * p2.x(), p2.y()); + p1 = QPointF(2 * axis_x - p1.x(), p1.y()); + p2 = QPointF(2 * axis_x - p2.x(), p2.y()); m_line.setP1(mapFromScene(p1)); m_line.setP2(mapFromScene(p2)); setLine(m_line); diff --git a/sources/editor/graphicspart/partline.h b/sources/editor/graphicspart/partline.h index dfbb361d5..1e3082a53 100644 --- a/sources/editor/graphicspart/partline.h +++ b/sources/editor/graphicspart/partline.h @@ -96,8 +96,8 @@ class PartLine : public CustomElementGraphicPart void setSecondEndLength(const qreal &l); void setRotation(qreal angle); qreal rotation() const; - void flip(); - void mirror(); + void flip(qreal axis_y = 0); + void mirror(qreal axis_x = 0); void addHandler() override; void removeHandler() override; diff --git a/sources/editor/graphicspart/partpolygon.cpp b/sources/editor/graphicspart/partpolygon.cpp index eceae2bb2..eb96837e4 100644 --- a/sources/editor/graphicspart/partpolygon.cpp +++ b/sources/editor/graphicspart/partpolygon.cpp @@ -307,10 +307,10 @@ qreal PartPolygon::rotation() const { return qRound(m_rot * 100.0) / 100.0; } -void PartPolygon::flip() { +void PartPolygon::flip(qreal axis_y) { for (auto &pt : m_polygon) { pt = mapToScene(pt.x(), pt.y()); - pt = QPointF(pt.x(), (-1) * pt.y()); + pt = QPointF(pt.x(), 2 * axis_y - pt.y()); pt = mapFromScene(pt.x(), pt.y()); } setPolygon(m_polygon); @@ -319,10 +319,10 @@ void PartPolygon::flip() { emit polygonChanged(); } -void PartPolygon::mirror() { +void PartPolygon::mirror(qreal axis_x) { for (auto &pt : m_polygon) { pt = mapToScene(pt.x(), pt.y()); - pt = QPointF((-1) * pt.x(), pt.y()); + pt = QPointF(2 * axis_x - pt.x(), pt.y()); pt = mapFromScene(pt.x(), pt.y()); } setPolygon(m_polygon); diff --git a/sources/editor/graphicspart/partpolygon.h b/sources/editor/graphicspart/partpolygon.h index f8a67f18c..bee786be4 100644 --- a/sources/editor/graphicspart/partpolygon.h +++ b/sources/editor/graphicspart/partpolygon.h @@ -89,8 +89,8 @@ class PartPolygon : public CustomElementGraphicPart void setRotation (qreal angle); qreal rotation () const; - void flip(); - void mirror(); + void flip(qreal axis_y = 0); + void mirror(qreal axis_x = 0); void addHandler() override; void removeHandler() override; diff --git a/sources/editor/graphicspart/partrectangle.cpp b/sources/editor/graphicspart/partrectangle.cpp index 78fa726e3..e1955b1b9 100644 --- a/sources/editor/graphicspart/partrectangle.cpp +++ b/sources/editor/graphicspart/partrectangle.cpp @@ -187,11 +187,11 @@ qreal PartRectangle::rotation() const { return qRound(m_rot * 100.0) / 100.0; } -void PartRectangle::flip() { +void PartRectangle::flip(qreal axis_y) { auto height = m_rect.height(); auto p1 = mapToScene(m_rect.x(),m_rect.y()); qreal x = p1.x(); - qreal y = ((-1.0) * p1.y()) - height; + qreal y = 2 * axis_y - p1.y() - height; p1 = mapFromScene(x, y); m_rect.setX(p1.x()); m_rect.setY(p1.y()); @@ -201,10 +201,10 @@ void PartRectangle::flip() { emit rectChanged(); } -void PartRectangle::mirror() { +void PartRectangle::mirror(qreal axis_x) { auto width = m_rect.width(); auto p1 = mapToScene(m_rect.x(),m_rect.y()); - qreal x = ((-1.0) * p1.x()) - width; + qreal x = 2 * axis_x - p1.x() - width; qreal y = p1.y(); p1 = mapFromScene(x, y); m_rect.setX(p1.x()); diff --git a/sources/editor/graphicspart/partrectangle.h b/sources/editor/graphicspart/partrectangle.h index 00ed2bc39..c2d259f77 100644 --- a/sources/editor/graphicspart/partrectangle.h +++ b/sources/editor/graphicspart/partrectangle.h @@ -73,8 +73,8 @@ class PartRectangle : public CustomElementGraphicPart void setYRadius(qreal Y); void setRotation(qreal angle); qreal rotation() const; - void flip(); - void mirror(); + void flip(qreal axis_y = 0); + void mirror(qreal axis_x = 0); QRectF sceneGeometricRect() const override; virtual QPointF sceneTopLeft() const; diff --git a/sources/editor/graphicspart/partterminal.cpp b/sources/editor/graphicspart/partterminal.cpp index 194ae0aec..0b85ba026 100644 --- a/sources/editor/graphicspart/partterminal.cpp +++ b/sources/editor/graphicspart/partterminal.cpp @@ -293,9 +293,9 @@ qreal PartTerminal::rotation() const { @brief PartTerminal::flip turn part upside down */ -void PartTerminal::flip() { +void PartTerminal::flip(qreal axis_y) { d->m_pos.setX( pos().x()); - d->m_pos.setY((-1.0) * pos().y()); + d->m_pos.setY(2 * axis_y - pos().y()); switch (d->m_orientation) { case Qet::North : setOrientation(Qet::South); break; @@ -314,8 +314,8 @@ void PartTerminal::flip() { @brief PartTerminal::mirror turn part from left to right */ -void PartTerminal::mirror() { - d->m_pos.setX((-1.0) * pos().x()); +void PartTerminal::mirror(qreal axis_x) { + d->m_pos.setX(2 * axis_x - pos().x()); d->m_pos.setY( pos().y()); switch (d->m_orientation) { case Qet::North : break; diff --git a/sources/editor/graphicspart/partterminal.h b/sources/editor/graphicspart/partterminal.h index d0ba05da9..1ef413cd6 100644 --- a/sources/editor/graphicspart/partterminal.h +++ b/sources/editor/graphicspart/partterminal.h @@ -96,8 +96,8 @@ class PartTerminal : public CustomElementGraphicPart void setRotation(qreal angle); qreal rotation() const; - void flip(); - void mirror(); + void flip(qreal axis_y = 0); + void mirror(qreal axis_x = 0); void nextOrientation(); void previousOrientation(); diff --git a/sources/editor/graphicspart/parttext.cpp b/sources/editor/graphicspart/parttext.cpp index ae6d97277..47d3007af 100644 --- a/sources/editor/graphicspart/parttext.cpp +++ b/sources/editor/graphicspart/parttext.cpp @@ -75,7 +75,7 @@ void PartText::setRotation(qreal angle) { setPos(QTransform().rotate(diffAngle).map(pos())); } -void PartText::mirror() { +void PartText::mirror(qreal axis_x) { // at first: rotate the text: QGraphicsObject::setRotation(QET::correctAngle((360-rotation()), true)); // then see, where we need to re-position depending on text, font ... @@ -86,12 +86,12 @@ void PartText::mirror() { qreal c = qCos(qDegreesToRadians(rot)); qreal s = qSin(qDegreesToRadians(rot)); // Now: Move! - qreal x = (-1) * pos().x() - c * (textwidth); + qreal x = 2 * axis_x - pos().x() - c * (textwidth); qreal y = pos().y() - s * (textwidth); setPos(x, y); } -void PartText::flip() { +void PartText::flip(qreal axis_y) { // at first: rotate the text: QGraphicsObject::setRotation(QET::correctAngle((360-rotation()), true)); // then see, where we need to re-position depending on text, font ... @@ -103,7 +103,7 @@ void PartText::flip() { qreal s = qSin(qDegreesToRadians(rot)); // Now: Move! qreal x = pos().x() - s * (textheight); - qreal y = (-1) * pos().y() + c * (textheight); + qreal y = 2 * axis_y - pos().y() + c * (textheight); setPos(x, y); } diff --git a/sources/editor/graphicspart/parttext.h b/sources/editor/graphicspart/parttext.h index 4ba66f7c8..29609440e 100644 --- a/sources/editor/graphicspart/parttext.h +++ b/sources/editor/graphicspart/parttext.h @@ -64,8 +64,8 @@ class PartText : public QGraphicsTextItem, public CustomElementPart { void fromXml(const QDomElement &) override; const QDomElement toXml(QDomDocument &) const override; void setRotation(qreal angle); - void mirror(); - void flip(); + void mirror(qreal axis_x = 0); + void flip(qreal axis_y = 0); bool isUseless() const override; QRectF sceneGeometricRect() const override; void startUserTransformation(const QRectF &) override; From 7c5f8c6a4b801059ed4bcc097a62db5a36ef13f0 Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Mon, 7 Sep 2026 20:02:38 +1200 Subject: [PATCH 40/95] Fix: roll back removeDiagram cascade delete on query failure Each cascade delete (element_info/terminal/conductor/element) only logged its error and fell through to the next query regardless, so a mid-cascade failure (e.g. a locked DB) still let the diagram row get deleted while its child rows survived -- the same inconsistency this branch set out to fix, just via a different failure path. Wrap the cascade in a transaction and roll back + bail on the first failed exec(), matching the existing transaction pattern in updateDB(). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --- sources/dataBase/projectdatabase.cpp | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index 1f4770230..124176f90 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -229,41 +229,53 @@ void projectDataBase::removeDiagram(Diagram *diagram) //Order matters: element_info and terminal are scoped through a //subquery on element, so they must run before element itself is - //deleted below. Without this, a removed diagram left its rows - //behind in every one of these tables until the next full - //updateDB() rebuild -- invisible day to day, since nothing reads - //them meanwhile, but a real inconsistency between the live scene - //and the database in between. + //deleted below. The whole cascade runs in one transaction and is + //rolled back on the first error, so a mid-cascade failure (e.g. a + //locked DB) can't leave the diagram row deleted while its + //element/terminal/element_info/conductor rows survive. + m_data_base.transaction(); + m_cascade_remove_element_info_query.bindValue(":uuid", uuid_str); if (!m_cascade_remove_element_info_query.exec()) { qDebug() << "projectDataBase::removeDiagram element_info cascade error : " << m_cascade_remove_element_info_query.lastError(); + m_data_base.rollback(); + return; } m_cascade_remove_terminal_query.bindValue(":uuid", uuid_str); if (!m_cascade_remove_terminal_query.exec()) { qDebug() << "projectDataBase::removeDiagram terminal cascade error : " << m_cascade_remove_terminal_query.lastError(); + m_data_base.rollback(); + return; } m_cascade_remove_conductor_query.bindValue(":uuid", uuid_str); if (!m_cascade_remove_conductor_query.exec()) { qDebug() << "projectDataBase::removeDiagram conductor cascade error : " << m_cascade_remove_conductor_query.lastError(); + m_data_base.rollback(); + return; } m_cascade_remove_element_query.bindValue(":uuid", uuid_str); if (!m_cascade_remove_element_query.exec()) { qDebug() << "projectDataBase::removeDiagram element cascade error : " << m_cascade_remove_element_query.lastError(); + m_data_base.rollback(); + return; } m_remove_diagram_query.bindValue(":uuid", uuid_str); if (!m_remove_diagram_query.exec()) { qDebug() << "projectDataBase::removeDiagram delete error : " << m_remove_diagram_query.lastError(); - } else { - emit dataBaseUpdated(); + m_data_base.rollback(); + return; } + + m_data_base.commit(); + emit dataBaseUpdated(); } void projectDataBase::diagramInfoChanged(Diagram *diagram) From b2f4ef5d25e6d134b8edcabdeab2c6c2434a128c Mon Sep 17 00:00:00 2001 From: ispyisail <shane.ringrose@gmail.com> Date: Mon, 7 Sep 2026 20:13:05 +1200 Subject: [PATCH 41/95] Fix: positionKey() didn't sort coordinates numerically Plain fixed-precision formatting ("%.4f") produces strings that don't compare in numeric order once the integer part has a different digit count -- e.g. "15.0000" sorts before "5.0000" as text, even though 15 > 5. That silently broke the determinism goal of this branch for any diagram with coordinates spanning more than one digit width. Shift into a non-negative range and zero-pad to a fixed width instead, so the formatted string sorts the same way the number does, including negative values. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --- sources/diagram.cpp | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/sources/diagram.cpp b/sources/diagram.cpp index 271e0713f..3c673c86c 100644 --- a/sources/diagram.cpp +++ b/sources/diagram.cpp @@ -45,13 +45,24 @@ #include <math.h> namespace { - /// Format a position as a string that sorts the same way the numbers do - /// (fixed precision, so "-" and decimals compare correctly as text). + /// Format a coordinate as a string that sorts the same way the number + /// does. Plain fixed-precision formatting ("%.4f") does NOT do this -- + /// e.g. "15.0000" sorts before "5.0000" as text even though 15 > 5 -- + /// so shift into a non-negative range and zero-pad to a fixed width + /// before comparing. + QString coordinateKey(double v) + { + //Diagram coordinates are nowhere near this range; the offset and + //width just need to be big enough that shifted values are always + //non-negative and always the same digit count. + constexpr double offset = 1e9; + qint64 scaled = qint64(qRound64((v + offset) * 10000.0)); + return QStringLiteral("%1").arg(scaled, 20, 10, QLatin1Char('0')); + } + QString positionKey(const QPointF &pos) { - return QStringLiteral("%1|%2") - .arg(pos.x(), 0, 'f', 4) - .arg(pos.y(), 0, 'f', 4); + return coordinateKey(pos.x()) + QLatin1Char('|') + coordinateKey(pos.y()); } /// Sort key for Diagram::toXml()'s <elements> block: the element's own From a0658675021312e91934a69ba6dc946887c16a9c Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sun, 6 Sep 2026 10:49:21 +0200 Subject: [PATCH 42/95] Fix issue that made it impossible to remove all transparency colours defined in a previously opened dialog. On the last color the OK button was greyed out. --- sources/ui/imagetransparentcolordialog.cpp | 23 +++++++++++++++++++--- sources/ui/imagetransparentcolordialog.h | 2 ++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/sources/ui/imagetransparentcolordialog.cpp b/sources/ui/imagetransparentcolordialog.cpp index a4a4fd001..ce087c7c4 100644 --- a/sources/ui/imagetransparentcolordialog.cpp +++ b/sources/ui/imagetransparentcolordialog.cpp @@ -112,7 +112,8 @@ ImageTransparentColorDialog::ImageTransparentColorDialog(const QPixmap &basePixm auto *buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this); m_okButton = buttons->button(QDialogButtonBox::Ok); - m_okButton->setEnabled(!m_pickedColors.isEmpty()); // nothing to apply until at least one colour has been picked + m_startedWithColors = !m_pickedColors.isEmpty(); + updateOkEnabled(); auto *grid = new QGridLayout; grid->addWidget(new QLabel(tr("Image source")), 0, 0); @@ -159,7 +160,7 @@ void ImageTransparentColorDialog::onColorPicked(const QColor &color) return; m_pickedColors.append({color, m_lastToleranceUsed}); - m_okButton->setEnabled(true); + updateOkEnabled(); rebuildSwatches(); updatePreview(); } @@ -183,6 +184,22 @@ void ImageTransparentColorDialog::setToleranceForIndex(int index, int value) updatePreview(); } +/** + @brief ImageTransparentColorDialog::updateOkEnabled + OK is disabled only for the one case where accepting would genuinely + do nothing: a dialog that started with no colours and still has + none. Removing every colour from a dialog that DID start with some + is a different, meaningful action -- clearing all transparency back + to a plain, opaque image -- and has to stay confirmable, not silently + blocked the same way. Re-run after every add or remove, since either + can cross the "any colours at all, ever" threshold in either + direction. +*/ +void ImageTransparentColorDialog::updateOkEnabled() +{ + m_okButton->setEnabled(!m_pickedColors.isEmpty() || m_startedWithColors); +} + /** @brief ImageTransparentColorDialog::removeColor Removes one colour from the set -- the counterpart onColorPicked() @@ -196,7 +213,7 @@ void ImageTransparentColorDialog::removeColor(int index) return; m_pickedColors.removeAt(index); - m_okButton->setEnabled(!m_pickedColors.isEmpty()); + updateOkEnabled(); rebuildSwatches(); updatePreview(); } diff --git a/sources/ui/imagetransparentcolordialog.h b/sources/ui/imagetransparentcolordialog.h index d6e8a0136..df3c6613a 100644 --- a/sources/ui/imagetransparentcolordialog.h +++ b/sources/ui/imagetransparentcolordialog.h @@ -142,11 +142,13 @@ class ImageTransparentColorDialog : public QDialog void removeColor(int index); void rebuildSwatches(); void updatePreview(); + void updateOkEnabled(); static QPixmap onCheckerboard(const QImage &image); QImage m_sourceImage; QImage m_previewSourceImage; // downsampled -- see ClickableImageLabel::displayImage()'s comment for why QList<PickedColor> m_pickedColors; + bool m_startedWithColors = false; // whether existingColors was non-empty -- see updateOkEnabled()'s comment for why this matters int m_lastToleranceUsed = 10; // seeds a newly-picked colour's own tolerance, so successive picks in one session feel consistent rather than each resetting to some fixed default ClickableImageLabel *m_sourceLabel; From 6f80da66d5a7e7864f10ffcabf3749dc8fdbe604 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sun, 6 Sep 2026 10:50:41 +0200 Subject: [PATCH 43/95] Connected to previous image handling updates: images were not exported at all to dxf. In this update instead of the image a placeholder box is drawn and a warning is given during export. Current dxf version is extremely old and does not support any image embedding. Future possible update is the introduction of a newer dxf version export option which would allow to embed a link to an external image file. --- sources/dxfpaintdevice.cpp | 46 ++++++++++++++---- sources/dxfpaintdevice.h | 17 +++++-- sources/exportdialog.cpp | 55 ++++++++++++++++++++++ sources/qetgraphicsitem/diagramimageitem.h | 14 ++++++ 4 files changed, 119 insertions(+), 13 deletions(-) diff --git a/sources/dxfpaintdevice.cpp b/sources/dxfpaintdevice.cpp index e7f180a33..8264bdcb1 100644 --- a/sources/dxfpaintdevice.cpp +++ b/sources/dxfpaintdevice.cpp @@ -200,18 +200,35 @@ void DxfPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textItem) /** @brief DxfPaintEngine::drawPixmap - Not implemented in v1 - out of scope per the design note in the - header (CrossRefItem, the only item exported through this engine so - far, never draws a pixmap). qWarning() rather than a hard failure, so - an item that does call this in the future degrades to "one entity - missing" instead of crashing the whole export. + No DXF dialect this old (AC1006, AutoCAD R10 from 1988) has any + raster image representation at all -- IMAGE/IMAGEDEF wasn't + introduced until R2000, over a decade later, and even there the + pixels are never embedded, only referenced by external file path. + Actually supporting images means upgrading the DXF version target + and managing a second file alongside the DXF; until then, this + draws a placeholder rectangle outline (the item's own destination + rect, mapped through m_world_transform exactly like drawRects() + does) instead of silently dropping the item -- so its position, + size, rotation, and skew all survive the export even though the + picture itself can't yet. A fixed, plain pen, not m_pen: an image + item has no meaningful pen of its own for this engine to have + picked up from a prior updateState(). */ void DxfPaintEngine::drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr) { - Q_UNUSED(r) Q_UNUSED(pm) Q_UNUSED(sr) - qWarning() << "DxfPaintEngine::drawPixmap: not supported, entity skipped"; + + QPolygonF corners; + corners << r.topLeft() << r.topRight() << r.bottomRight() << r.bottomLeft(); + + QPolygonF mapped; + mapped.reserve(corners.size() + 1); + for (const QPointF &p : corners) + mapped << toDxf(p); + mapped << mapped.first(); + + Createdxf::drawPolyline(m_filepath, mapped, Createdxf::dxfColor(QPen(Qt::black))); } /** @@ -261,8 +278,21 @@ int DxfPaintDevice::metric(PaintDeviceMetric metric) const case PdmDepth: return 24; case PdmDevicePixelRatio: - case PdmDevicePixelRatioScaled: return 1; + case PdmDevicePixelRatioScaled: + // Not just 1: Qt's own convention (see QPaintDevice's docs) + // is that this metric equals PdmDevicePixelRatio scaled by + // devicePixelRatioFScale() -- a large constant (65536) + // used internally for sub-integer precision. Returning the + // plain, unscaled ratio here (as this used to) meant + // QPainter's own transform bookkeeping divided by it + // expecting the scaled value, silently shrinking every + // drawPixmap() destination rect by a factor of 65536 -- + // this is what was actually behind the placeholder + // rectangle rendering at a barely-visible fraction of its + // real size instead of the size the item's own + // sceneTransform() correctly specified. + return int(1 * QPaintDevice::devicePixelRatioFScale()); default: return 0; } diff --git a/sources/dxfpaintdevice.h b/sources/dxfpaintdevice.h index 6b43472c5..0091cefb7 100644 --- a/sources/dxfpaintdevice.h +++ b/sources/dxfpaintdevice.h @@ -56,11 +56,18 @@ - fillPath -> same outline-only handling as drawRects; no HATCH support in v1 (see design note in the PR) - Anything outside this list (images, gradients, etc.) is intentionally - unimplemented and asserts in debug builds rather than silently - producing an incomplete drawing - callers should know immediately if - an item they're exporting uses something this engine doesn't cover - yet, rather than getting a DXF file quietly missing content. + - drawPixmap -> no raster image entity exists in this DXF + dialect at all (see drawPixmap()'s own + comment) -- draws a placeholder rectangle + outline instead, preserving the item's + position/size/rotation/skew even though the + picture itself can't be included yet + + Anything else outside this list (gradients, etc.) is intentionally + unimplemented and logs a warning rather than silently producing an + incomplete drawing - callers should know immediately if an item + they're exporting uses something this engine doesn't cover yet, + rather than getting a DXF file quietly missing content. */ class DxfPaintEngine : public QPaintEngine { diff --git a/sources/exportdialog.cpp b/sources/exportdialog.cpp index e0315048c..6eeaabfc3 100644 --- a/sources/exportdialog.cpp +++ b/sources/exportdialog.cpp @@ -744,6 +744,25 @@ void ExportDialog::generateDxf( painter.end(); } + //Draw images -- collected above (list_images) but never actually + //drawn until now, an existing gap this reuses the same paint() + //-replay approach to fix: DiagramImageItem::paint() has no + //viewport-dependent logic (unlike CrossRefItem, which needs its own + //paintForExport() for that reason), so it's called directly with a + //default QStyleOptionGraphicsItem rather than needing an export- + //specific variant of its own. DxfPaintEngine::drawPixmap() is what + //actually turns the drawPixmap() call inside paint() into a + //placeholder outline, since this DXF dialect has no raster image + //entity to draw instead. + for (DiagramImageItem *image : std::as_const(list_images)) + { + DxfPaintDevice dxf_device(file_path); + QPainter painter(&dxf_device); + painter.setWorldTransform(image->sceneTransform()); + image->paintForExport(&painter); + painter.end(); + } + Createdxf::dxfEnd(file_path); saveReloadDiagramParameters(diagram, false); @@ -818,6 +837,42 @@ void ExportDialog::slot_export() return; } + // Warn once, up front, rather than per-diagram: this DXF dialect + // (AC1006, AutoCAD R10) has no raster image representation at all + // (IMAGE/IMAGEDEF wasn't introduced until R2000, over a decade + // later, and even there the picture is never embedded, only + // referenced by external file path) -- so any image ends up as a + // placeholder rectangle outline instead (see DxfPaintEngine:: + // drawPixmap()), with its position/size/rotation/skew preserved but + // not its actual content. + if (epw -> exportProperties().format.compare(QLatin1String("dxf"), Qt::CaseInsensitive) == 0) + { + bool any_images = false; + for (ExportDiagramLine *diagram_line : std::as_const(diagrams_to_export)) + { + for (QGraphicsItem *item : diagram_line->diagram->items()) + { + if (qgraphicsitem_cast<DiagramImageItem *>(item)) { + any_images = true; + break; + } + } + if (any_images) break; + } + + if (any_images) + { + QET::QetMessageBox::warning( + this, + tr("Images non incluses dans l'export DXF", "message box title"), + tr("Le format DXF utilisé ici (AC1006) ne permet pas d'inclure d'image. " + "Les images seront représentées uniquement par un rectangle de contour " + "(position, taille, rotation et inclinaison conservées), sans le contenu de l'image.", + "message box content") + ); + } + } + // exporte chaque schema a exporter foreach(ExportDiagramLine *diagram_line, diagrams_to_export) { exportDiagram(diagram_line); diff --git a/sources/qetgraphicsitem/diagramimageitem.h b/sources/qetgraphicsitem/diagramimageitem.h index 9c4352582..215e0b100 100644 --- a/sources/qetgraphicsitem/diagramimageitem.h +++ b/sources/qetgraphicsitem/diagramimageitem.h @@ -24,6 +24,7 @@ #include <QColor> #include <QList> +#include <QStyleOptionGraphicsItem> #include <QVector> class QDomElement; @@ -96,6 +97,19 @@ class DiagramImageItem : public QetGraphicsItem { QRectF boundingRect() const override; QString name() const override; + /// DXF export: replay this item's paint() on an arbitrary QPainter + /// (e.g. one targeting DxfPaintDevice). paint() itself stays + /// protected, as it should for the normal + /// QGraphicsScene/QGraphicsView paint contract - this is a + /// deliberate, narrow escape hatch for exporters, not a general + /// relaxation of that contract. Matches CrossRefItem::paintForExport() + /// exactly, for the identical reason. + void paintForExport(QPainter *painter) + { + QStyleOptionGraphicsItem option; + paint(painter, &option, nullptr); + } + qreal scaleFactorX() const { return m_transform.scaleX; } qreal scaleFactorY() const { return m_transform.scaleY; } void setScaleFactorX(qreal factor); From ef8e41a5c34b576441dcda026ad2ea7110370631 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sun, 6 Sep 2026 14:52:56 +0200 Subject: [PATCH 44/95] Fix transparency export (not possible for jpeg). --- sources/qetgraphicsitem/diagramimageitem.cpp | 181 +++++++++++++++++++ sources/qetgraphicsitem/diagramimageitem.h | 4 + 2 files changed, 185 insertions(+) diff --git a/sources/qetgraphicsitem/diagramimageitem.cpp b/sources/qetgraphicsitem/diagramimageitem.cpp index d23bab9e2..822609be0 100644 --- a/sources/qetgraphicsitem/diagramimageitem.cpp +++ b/sources/qetgraphicsitem/diagramimageitem.cpp @@ -31,10 +31,14 @@ #include "../QetGraphicsItemModeler/qetgraphicshandleritem.h" #include <QAction> +#include <QBuffer> #include <QFileDialog> +#include <QFileInfo> #include <QGraphicsSceneContextMenuEvent> +#include <QImageWriter> #include <QMenu> #include <QMessageBox> +#include <QTextStream> /** @brief DiagramImageItem::DiagramImageItem @@ -1029,6 +1033,177 @@ void DiagramImageItem::restoreAspectRatio() diagram()->undoStack().push(undo); } +/** + @brief DiagramImageItem::saveImageAs + Saves the currently displayed pixmap (crop and colour-keyed + transparency already applied -- what the item actually looks like + on the diagram, not the pristine original) to an arbitrary file on + disk. +*/ +void DiagramImageItem::saveImageAs() +{ + saveImagePixmapAs(pixmap_, tr("Enregistrer l'image sous..."), !m_transparent_colors.isEmpty()); +} + +/** + @brief DiagramImageItem::saveOriginalImageAs + Saves m_base_pixmap -- the true, pristine original, before any crop + or colour-keyed transparency -- rather than the item's current, + possibly-cropped-and-keyed display pixmap. The only way to recover + the un-cropped, un-keyed source once either of those has actually + been applied, short of undoing every edit back to the point it was + first inserted or replaced. +*/ +void DiagramImageItem::saveOriginalImageAs() +{ + saveImagePixmapAs(m_base_pixmap, tr("Enregistrer l'image d'origine sous..."), false); +} + +/** + @brief DiagramImageItem::saveImagePixmapAs + Shared by saveImageAs() and saveOriginalImageAs(): prompts for a + destination, resolves whichever format was actually intended, warns + before silently dropping transparency, and writes the file. A + read-only export, not an edit: doesn't touch diagram()'s undo stack, + and works even on a read-only diagram, unlike every other action in + this item's context menu. + @param pixmap the pixmap to save -- pixmap_ or m_base_pixmap + @param dialogTitle distinguishes the two callers in the save dialog's own title bar + @param hasTransparency whether `pixmap` has colour-keyed transparency worth warning about losing (never true for the pristine original, which predates any such keying) +*/ +void DiagramImageItem::saveImagePixmapAs(const QPixmap &pixmap, const QString &dialogTitle, bool hasTransparency) +{ + QWidget *parentWidget = (diagram() && !diagram()->views().isEmpty()) ? diagram()->views().first() : nullptr; + + // Filter text -> extension. Built once and used both to construct + // the dialog's filter list and, below, to resolve whichever one the + // person actually had selected -- rather than only ever falling + // back to a single hardcoded format regardless of their choice, + // which is what this used to do (getSaveFileName() doesn't reliably + // auto-append the selected filter's extension on every platform, + // and the previous version's fallback ignored the selected filter + // entirely, defaulting to PNG even when JPEG or BMP had been + // explicitly chosen). + const QList<QPair<QString, QString>> filters = { + {tr("Image PNG (*.png)"), QStringLiteral("png")}, + {tr("Image JPEG (*.jpg *.jpeg)"), QStringLiteral("jpg")}, + {tr("Image BMP (*.bmp)"), QStringLiteral("bmp")}, + // SVG here always means a raster image wrapped in an SVG + // container (an <image> element embedding this same pixmap as + // base64 PNG), never a true vector export -- this item only + // ever holds raster data, even when originally inserted from an + // SVG file, since that file was rasterized once at import time + // and its vector information is already gone by the time this + // runs. + {tr("Image SVG (*.svg)"), QStringLiteral("svg")}, + }; + QStringList filterStrings; + for (const auto &f : filters) + filterStrings << f.first; + filterStrings << tr("Tous les fichiers (*)"); + + QString selectedFilter; + QString path = QFileDialog::getSaveFileName( + parentWidget, dialogTitle, QString(), filterStrings.join(QLatin1String(";;")), &selectedFilter); + if (path.isEmpty()) + return; + + // Resolve the target format: prefer an extension already present + // and actually writable, otherwise fall back to whichever filter + // was selected in the dialog (not a fixed default), so the format + // picked in the dropdown is the one that's actually honoured even + // when the typed name carries no extension of its own. + QString suffix = QFileInfo(path).suffix().toLower(); + const bool suffixIsSvg = (suffix == QLatin1String("svg")); + const bool suffixIsWritableRaster = QImageWriter::supportedImageFormats().contains(suffix.toUtf8()); + if (!suffixIsSvg && !suffixIsWritableRaster) + { + QString fallbackExt = QStringLiteral("png"); + for (const auto &f : filters) + if (f.first == selectedFilter) { fallbackExt = f.second; break; } + path += QLatin1Char('.') + fallbackExt; + suffix = fallbackExt; + } + + // JPEG and BMP have no usable alpha channel here -- Qt's writers for + // both silently drop it. That alone wouldn't be too bad (the + // warning already tells the person transparency won't survive), + // except pixmap_ itself has already lost the true colour + // information wherever it's transparent by this point: QPixmap + // stores its data premultiplied internally, which zeroes out RGB + // at alpha=0 the moment applyColorKey()'s QImage result gets + // wrapped into a QPixmap -- confirmed directly, not assumed + // (QPixmap::fromImage() on a white, alpha=0 pixel reliably comes + // back black on toImage()). Saving pixmap_ as-is to a format with + // no alpha channel doesn't fall back to the original picture, it + // reveals that already-lost black. The fix below substitutes the + // cropped base pixmap for the save in this specific case -- it has + // the same, correct RGB values everywhere applyColorKey() left a + // pixel opaque (colour-keying only ever changes alpha, never RGB), + // so it's an exact reproduction of what the image looked like + // before any colour was ever keyed out, not an approximation. + const bool formatPreservesAlpha = (suffix == QLatin1String("png") || suffix == QLatin1String("svg")); + QPixmap toSave = pixmap; + if (hasTransparency && !formatPreservesAlpha) + { + if (QMessageBox::warning(parentWidget, + tr("Transparence non conservée"), + tr("Ce format ne prend pas en charge la transparence : l'image sera enregistrée " + "telle qu'elle était avant l'application de la couleur transparente. Continuer ?"), + QMessageBox::Yes | QMessageBox::Cancel) != QMessageBox::Yes) + return; + + toSave = m_base_pixmap.copy(m_crop_rect); + } + + bool ok; + if (suffix == QLatin1String("svg")) + ok = writeRasterAsSvg(toSave, path); + else + ok = toSave.save(path); + + if (!ok) + { + QMessageBox::warning(parentWidget, + tr("Échec de l'enregistrement"), + tr("Impossible d'enregistrer l'image à cet emplacement.")); + } +} + +/** + @brief DiagramImageItem::writeRasterAsSvg + Wraps `pixmap` as a base64-embedded PNG inside a minimal, valid SVG + document -- the closest this can honestly offer to "save as SVG" + given this item only ever holds raster data (see the note in + saveImagePixmapAs()). Opens in any SVG viewer at the pixmap's own + pixel size, but is not, and cannot be, a vector re-export. + @param pixmap the raster image to embed + @param path destination file path + @return whether the file was written successfully +*/ +bool DiagramImageItem::writeRasterAsSvg(const QPixmap &pixmap, const QString &path) +{ + QByteArray pngData; + QBuffer buffer(&pngData); + buffer.open(QIODevice::WriteOnly); + if (!pixmap.save(&buffer, "PNG")) + return false; + + QFile file(path); + if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) + return false; + + QTextStream out(&file); + out << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + << "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" " + << "width=\"" << pixmap.width() << "\" height=\"" << pixmap.height() << "\" " + << "viewBox=\"0 0 " << pixmap.width() << ' ' << pixmap.height() << "\">\n" + << " <image width=\"" << pixmap.width() << "\" height=\"" << pixmap.height() << "\" " + << "xlink:href=\"data:image/png;base64," << QString::fromLatin1(pngData.toBase64()) << "\"/>\n" + << "</svg>\n"; + return true; +} + /** @brief DiagramImageItem::itemChange */ @@ -1382,6 +1557,12 @@ void DiagramImageItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) QAction *replace = menu.data()->addAction(tr("Remplacer l'image...")); connect(replace, &QAction::triggered, this, &DiagramImageItem::replaceImage); + QAction *saveAs = menu.data()->addAction(tr("Enregistrer l'image sous...")); + connect(saveAs, &QAction::triggered, this, &DiagramImageItem::saveImageAs); + + QAction *saveOriginalAs = menu.data()->addAction(tr("Enregistrer l'image d'origine sous...")); + connect(saveOriginalAs, &QAction::triggered, this, &DiagramImageItem::saveOriginalImageAs); + QAction *transparentColor = menu.data()->addAction(tr("Couleur transparente...")); connect(transparentColor, &QAction::triggered, this, &DiagramImageItem::setTransparentColor); diff --git a/sources/qetgraphicsitem/diagramimageitem.h b/sources/qetgraphicsitem/diagramimageitem.h index 215e0b100..afdbaf7b5 100644 --- a/sources/qetgraphicsitem/diagramimageitem.h +++ b/sources/qetgraphicsitem/diagramimageitem.h @@ -143,6 +143,10 @@ class DiagramImageItem : public QetGraphicsItem { void setTransparentColor(); void crop(); void restoreAspectRatio(); + void saveImageAs(); + void saveOriginalImageAs(); + void saveImagePixmapAs(const QPixmap &pixmap, const QString &dialogTitle, bool hasTransparency); + static bool writeRasterAsSvg(const QPixmap &pixmap, const QString &path); static QPixmap computeDisplayPixmap(const QPixmap &base, const QRect &cropRect, const QList<ImageTransparentColorDialog::PickedColor> &colors); void toggleHandleMode(); From a85bd6a49bac567fdb25460ca73b2c5c237b9af0 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sun, 6 Sep 2026 18:19:12 +0200 Subject: [PATCH 45/95] Fixing undo operations of graphs and images. Changing undo names. --- .../qpropertyundocommand.cpp | 12 ++++ sources/qet.cpp | 18 ++++-- sources/qetgraphicsitem/diagramimageitem.cpp | 46 +++++++++++++++ sources/qetgraphicsitem/qetshapeitem.cpp | 59 +++++++++++++++++-- sources/qetgraphicsitem/qetshapeitem.h | 4 +- 5 files changed, 129 insertions(+), 10 deletions(-) diff --git a/sources/QPropertyUndoCommand/qpropertyundocommand.cpp b/sources/QPropertyUndoCommand/qpropertyundocommand.cpp index e7bf7ab7e..2480e5f65 100644 --- a/sources/QPropertyUndoCommand/qpropertyundocommand.cpp +++ b/sources/QPropertyUndoCommand/qpropertyundocommand.cpp @@ -128,6 +128,18 @@ bool QPropertyUndoCommand::mergeWith(const QUndoCommand *other) QPropertyUndoCommand const *undo = static_cast<const QPropertyUndoCommand *>(other); if (m_object != undo->m_object || m_property_name != undo->m_property_name) return false; + // Same object and property name alone isn't enough: two entirely + // separate, deliberate actions (say, cropping an image and then + // mirroring it) both go through the same "pixmap" property and + // would otherwise silently coalesce into one undo entry, carrying + // only the first action's label -- the second vanishes from the + // undo list with no way to undo just it. Legitimate merging (a + // slider or spinbox pushing one command per tick while being + // dragged, e.g. ArcEditor's angle editors) always reuses the exact + // same text() across the whole sequence, so requiring a match here + // keeps that working unchanged while refusing to merge anything + // that isn't actually a continuation of the same action. + if (text() != other->text()) return false; m_new_value = undo->m_new_value; return true; } diff --git a/sources/qet.cpp b/sources/qet.cpp index 0f0a5a8ee..a4c5dee52 100644 --- a/sources/qet.cpp +++ b/sources/qet.cpp @@ -297,11 +297,19 @@ QString QET::ElementsAndConductorsSentence( if (images_count) { if (!text.isEmpty()) text += ", "; - text += QObject::tr( - "%n image(s)", - "part of a sentence listing the content of a diagram", - images_count - ); + // Qt's %n only selects a grammatical singular/plural form (the + // "(s)" convention used by every other count here) -- it never + // spells the number out as a word, so getting "une image" + // instead of the literal "1 image" for the single-item case + // means handling that count outside %n entirely, with its own + // fixed string. + text += images_count == 1 + ? QObject::tr("une image", "part of a sentence listing the content of a diagram") + : QObject::tr( + "%n images", + "part of a sentence listing the content of a diagram", + images_count + ); } if (shapes_count) { diff --git a/sources/qetgraphicsitem/diagramimageitem.cpp b/sources/qetgraphicsitem/diagramimageitem.cpp index 822609be0..550a64e9d 100644 --- a/sources/qetgraphicsitem/diagramimageitem.cpp +++ b/sources/qetgraphicsitem/diagramimageitem.cpp @@ -815,11 +815,16 @@ void DiagramImageItem::handlerMouseReleaseEvent(int index) else undo = new QPropertyUndoCommand(this, "scaleFactorY", m_original_transform.scaleY, m_transform.scaleY); } + if (undo) + undo->setText(tr("Redimensionner une image")); break; case HandleRole::Rotate: if (!qFuzzyCompare(m_transform.rotation, m_original_transform.rotation)) + { undo = new QPropertyUndoCommand(this, "rotationAngle", m_original_transform.rotation, m_transform.rotation); + undo->setText(tr("Faire pivoter une image")); + } break; case HandleRole::SkewEdge: @@ -827,6 +832,8 @@ void DiagramImageItem::handlerMouseReleaseEvent(int index) undo = new QPropertyUndoCommand(this, "skewX", m_original_transform.skewX, m_transform.skewX); else if (!qFuzzyCompare(m_transform.skewY, m_original_transform.skewY)) undo = new QPropertyUndoCommand(this, "skewY", m_original_transform.skewY, m_transform.skewY); + if (undo) + undo->setText(tr("Incliner une image")); break; case HandleRole::Pivot: @@ -841,8 +848,28 @@ void DiagramImageItem::handlerMouseReleaseEvent(int index) if (undo) { + // Defensive fallback only -- every role above now sets its + // own, distinct label directly (Resize/Rotate/SkewEdge used + // to all fall through to this same generic text, making the + // undo list unable to tell three completely different edits + // apart); this only still matters if some future role is + // ever added without setting one of its own. if (undo->text().isEmpty()) undo->setText(tr("Modifier une image")); + + // Every push here is one complete, finished gesture (press, + // drag, release) -- never a continuation of an earlier one. + // QPropertyUndoCommand::mergeWith() already treats any + // command with children as never mergeable; a dummy child + // guarantees that here regardless of which role produced + // undo. Without this, a single-property change (Rotate and + // SkewEdge always are; Resize sometimes is, when only one + // axis actually changed) would silently coalesce into + // whatever identically-labelled edit came right before it + // -- even after a deselect/reselect proved they were two + // separate actions, since the shared label alone is + // otherwise indistinguishable from a genuine continuation. + new QUndoCommand(undo); diagram()->undoStack().push(undo); } } @@ -1635,6 +1662,15 @@ void DiagramImageItem::replaceImage() auto *undo = new QPropertyUndoCommand(this, "pixmap", oldPixmap, newPixmap); undo->setText(tr("Remplacer une image")); + // Every call here is a separate, deliberate menu action with no + // compound child of its own (unlike crop(), which always chains a + // pos/rawPivot change and is naturally immune) -- two of them in a + // row would carry the exact same object, property, and text, which + // is indistinguishable from a legitimate merge to + // QPropertyUndoCommand::mergeWith(). A dummy child (already treated + // as "never merge" by that check) keeps each one its own, separate + // undo step regardless. + new QUndoCommand(undo); diagram()->undoStack().push(undo); } @@ -1678,6 +1714,11 @@ void DiagramImageItem::mirror(bool horizontal) auto *undo = new QPropertyUndoCommand(this, "pixmap", oldPixmap, newPixmap); undo->setText(horizontal ? tr("Miroir horizontal d'une image") : tr("Miroir vertical d'une image")); + // See replaceImage()'s identical comment: a separate, deliberate + // action with no compound child of its own, so a dummy one is + // needed to stop two consecutive same-direction mirrors (identical + // object, property, and text) from silently merging into one. + new QUndoCommand(undo); diagram()->undoStack().push(undo); } @@ -1727,6 +1768,11 @@ void DiagramImageItem::setTransparentColor() auto *undo = new QPropertyUndoCommand(this, "pixmap", oldPixmap, newPixmap); undo->setText(tr("Définir une couleur transparente")); + // See replaceImage()'s identical comment: a separate, deliberate + // action with no compound child of its own, so a dummy one is + // needed to stop two consecutive transparency edits (identical + // object, property, and text) from silently merging into one. + new QUndoCommand(undo); diagram()->undoStack().push(undo); } diff --git a/sources/qetgraphicsitem/qetshapeitem.cpp b/sources/qetgraphicsitem/qetshapeitem.cpp index a744cf772..3d952245b 100644 --- a/sources/qetgraphicsitem/qetshapeitem.cpp +++ b/sources/qetgraphicsitem/qetshapeitem.cpp @@ -2477,6 +2477,8 @@ void QetShapeItem::handlerMousePressEvent(int handlerIndex) m_old_polygon = m_polygon; m_old_xRadius = m_xRadius; m_old_yRadius = m_yRadius; + m_old_startAngle = m_startAngle; + m_old_endAngle = m_endAngle; m_old_transform = m_transform; m_old_pos = pos(); m_old_nodes = m_nodes; @@ -2555,11 +2557,16 @@ void QetShapeItem::handlerMouseReleaseEvent(int handlerIndex) { undo = new QPropertyUndoCommand(this, "rect", QRectF(m_old_P1, m_old_P2), QRectF(m_P1, m_P2).normalized()); } + if (undo) + undo->setText(tr("Redimensionner %1").arg(name())); break; case HandleRole::Rotate: if (!qFuzzyCompare(m_transform.rotation, m_old_transform.rotation)) + { undo = new QPropertyUndoCommand(this, "rotation", m_old_transform.rotation, m_transform.rotation); + undo->setText(tr("Faire pivoter %1").arg(name())); + } break; case HandleRole::SkewEdge: @@ -2567,6 +2574,8 @@ void QetShapeItem::handlerMouseReleaseEvent(int handlerIndex) undo = new QPropertyUndoCommand(this, "skewX", m_old_transform.skewX, m_transform.skewX); else if (!qFuzzyCompare(m_transform.skewY, m_old_transform.skewY)) undo = new QPropertyUndoCommand(this, "skewY", m_old_transform.skewY, m_transform.skewY); + if (undo) + undo->setText(tr("Incliner %1").arg(name())); break; case HandleRole::Pivot: @@ -2583,20 +2592,37 @@ void QetShapeItem::handlerMouseReleaseEvent(int handlerIndex) { undo = new QPropertyUndoCommand(this, "xRadius", m_old_xRadius, m_xRadius); new QPropertyUndoCommand(this, "yRadius", m_old_yRadius, m_yRadius, undo); + undo->setText(tr("Arrondir les coins d'%1").arg(name())); } break; case HandleRole::ArcEndpoint: - // startAngle/endAngle changes are cosmetic-cost enough (and - // re-derived from each other on snap-to-full-ellipse) that - // they are intentionally not wrapped in undo here yet -- flag - // for a follow-up once ArcEndpoint dragging ships in the UI. + // The snap-to-full-ellipse behaviour in setStartAngle()/ + // setEndAngle() (see anglesGeometricallyAdjacent()) can + // reset BOTH angles at once even though only one endpoint + // was actually dragged, so both are checked here regardless + // of which handle (slot 0 or 1) triggered this -- the same + // reasoning as CornerRadius checking both xRadius and + // yRadius above. + if (!qFuzzyCompare(m_startAngle, m_old_startAngle)) + { + undo = new QPropertyUndoCommand(this, "startAngle", m_old_startAngle, m_startAngle); + if (!qFuzzyCompare(m_endAngle, m_old_endAngle)) + new QPropertyUndoCommand(this, "endAngle", m_old_endAngle, m_endAngle, undo); + } + else if (!qFuzzyCompare(m_endAngle, m_old_endAngle)) + { + undo = new QPropertyUndoCommand(this, "endAngle", m_old_endAngle, m_endAngle); + } + if (undo) + undo->setText(tr("Modifier l'angle d'un arc")); break; case HandleRole::PathAnchor: if (m_shapeType == Polygon && m_polygon != m_old_polygon) { undo = new QPropertyUndoCommand(this, "polygon", m_old_polygon, m_polygon); + undo->setText(tr("Modifier la forme d'%1").arg(name())); } else if (m_shapeType == Path && m_nodes != m_old_nodes) { @@ -2611,6 +2637,7 @@ void QetShapeItem::handlerMouseReleaseEvent(int handlerIndex) m_nodes = after; const QDomElement afterXml = snapshotXml(); undo = new PromoteShapeCommand(this, before, afterXml); + undo->setText(tr("Modifier la forme d'%1").arg(name())); } break; @@ -2624,14 +2651,38 @@ void QetShapeItem::handlerMouseReleaseEvent(int handlerIndex) m_nodes = after; const QDomElement afterXml = snapshotXml(); undo = new PromoteShapeCommand(this, before, afterXml); + undo->setText(tr("Modifier la courbure d'%1").arg(name())); } break; } if (undo) { + // Defensive fallback only -- every role above now sets its own, + // distinct label directly (Resize/Rotate/SkewEdge/CornerRadius/ + // PathAnchor/PathControlIn/PathControlOut used to all fall + // through to this same generic text, making the undo list + // unable to tell completely different edits apart); this only + // still matters if some future role is ever added without + // setting one of its own. if (undo->text().isEmpty()) undo->setText(tr("Modifier %1").arg(name())); + + // Every push here is one complete, finished gesture (press, + // drag, release) -- never a continuation of an earlier one, the + // way ArcEditor's slider deliberately pushes many commands + // during a single ongoing drag and wants them to merge. + // QPropertyUndoCommand::mergeWith() already treats any command + // with children as never mergeable; a dummy child guarantees + // that here regardless of which role produced undo. Without + // this, a single-property change (Rotate and SkewEdge always + // are; Resize and ArcEndpoint sometimes are, when only one of + // their two properties actually changed) would silently + // coalesce into whatever identically-labelled edit came right + // before it -- even after a deselect/reselect proved they were + // two separate actions, since the shared label is otherwise + // indistinguishable from a genuine continuation. + new QUndoCommand(undo); diagram()->undoStack().push(undo); } } diff --git a/sources/qetgraphicsitem/qetshapeitem.h b/sources/qetgraphicsitem/qetshapeitem.h index fdb7fe6a4..f30459189 100644 --- a/sources/qetgraphicsitem/qetshapeitem.h +++ b/sources/qetgraphicsitem/qetshapeitem.h @@ -312,7 +312,9 @@ class QetShapeItem : public QetGraphicsItem qreal m_xRadius = 0, m_yRadius = 0, m_old_xRadius, - m_old_yRadius; + m_old_yRadius, + m_old_startAngle, + m_old_endAngle; ShapeTransform m_transform; ShapeTransform m_old_transform; From 4d991d0419df2094b76490b504299924ae983f67 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Sun, 6 Sep 2026 19:30:56 +0200 Subject: [PATCH 46/95] Conversion of ellipses and rounded rectangles to bezier curves instead of polylines. --- sources/qetgraphicsitem/qetshapeitem.cpp | 205 +++++++++++++++++++++-- sources/qetgraphicsitem/qetshapeitem.h | 4 +- 2 files changed, 197 insertions(+), 12 deletions(-) diff --git a/sources/qetgraphicsitem/qetshapeitem.cpp b/sources/qetgraphicsitem/qetshapeitem.cpp index 3d952245b..6c9a590c2 100644 --- a/sources/qetgraphicsitem/qetshapeitem.cpp +++ b/sources/qetgraphicsitem/qetshapeitem.cpp @@ -1097,8 +1097,18 @@ void QetShapeItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) if (canConvertToPath) { - QAction *convert = menu.data()->addAction(tr("Convertir en polyligne")); - connect(convert, &QAction::triggered, this, &QetShapeItem::convertToPathExplicitly); + // Only a sharp-cornered rectangle converts losslessly to + // straight-edged polyline -- an ellipse (or arc) flattened + // to its bounding rect's 4 corners wouldn't resemble the + // original shape at all, and rounded corners would be + // silently squared off. Both of those instead need an + // actual Bezier curve to preserve their real geometry; the + // label reflects whichever this particular shape will + // actually get, rather than always claiming "polyligne" + // regardless of what's about to happen. + const bool needsBezier = (m_shapeType == Ellipse) || (m_xRadius > 0 || m_yRadius > 0); + QAction *convert = menu.data()->addAction(needsBezier ? tr("Convertir en courbe de Bézier") : tr("Convertir en polyligne")); + connect(convert, &QAction::triggered, this, &QetShapeItem::convertToPathOrPolygon); } QAction *mirrorH = menu.data()->addAction(tr("Miroir horizontal")); @@ -1929,34 +1939,207 @@ void QetShapeItem::removePathPoint(int nodeIndex) rebuildHandles(); } -void QetShapeItem::convertToPathExplicitly() +/** + @brief QetShapeItem::convertToPathOrPolygon + Context-menu action, explicitly requested rather than triggered by an + Alt+drag (see promoteRectangleOrEllipseToPolygon() for that separate + mechanism). A sharp-cornered rectangle converts losslessly to a + 4-corner polygon -- its 4 corners already are exactly what a + rectangle is. Anything else offered here (an ellipse/arc, or a + rectangle with rounded corners) used to get the exact same + treatment, which is wrong: an ellipse flattened to its bounding + rect's 4 corners doesn't resemble an ellipse at all, and rounded + corners would be silently squared off. Both instead become a + genuine Bezier Path, built from the two verified helper functions + below (numerically confirmed against Qt's own arcTo()/addRoundedRect() + output -- worst-case error a small fraction of a unit on shapes + roughly 100-250 units across, i.e. visually indistinguishable, not + merely "close enough to eyeball"). +*/ +void QetShapeItem::convertToPathOrPolygon() { if (m_shapeType != Rectangle && m_shapeType != Ellipse) return; + const bool hasRoundedCorners = (m_shapeType == Rectangle) && (m_xRadius > 0 || m_yRadius > 0); + // Captured before m_shapeType changes below -- name() reports + // whatever the CURRENT type is, and by the time the undo text is + // built further down, m_shapeType has already become Polygon or + // Path, so calling name() at that point would describe the shape's + // new type, not what it actually was before conversion ("Convertir + // une polyligne en polyligne" instead of "Convertir un rectangle en + // polyligne"). + const QString originalName = name(); const QDomElement before = snapshotXml(); - QPolygonF corners; - const QRectF r = localRect(); - corners << r.topLeft() << r.topRight() << r.bottomRight() << r.bottomLeft(); - prepareGeometryChange(); - m_shapeType = Polygon; - m_polygon = corners; - m_closed = true; + + if (m_shapeType == Rectangle && !hasRoundedCorners) + { + QPolygonF corners; + const QRectF r = localRect(); + corners << r.topLeft() << r.topRight() << r.bottomRight() << r.bottomLeft(); + m_shapeType = Polygon; + m_polygon = corners; + m_closed = true; + } + else if (m_shapeType == Rectangle) // rounded corners + { + m_nodes = bezierNodesForRoundedRect(QRectF(m_P1, m_P2), m_xRadius, m_yRadius); + m_shapeType = Path; + m_closed = true; + } + else // Ellipse, full or arc + { + const QRectF r(m_P1, m_P2); + if (isFullEllipse()) + { + m_nodes = bezierNodesForArc(r, 0, 360); + m_closed = true; + } + else if (m_arcClosure == Pie) + { + m_nodes = bezierNodesForArc(r, m_startAngle, spanAngle()); + PathNode centerNode; + centerNode.anchor = r.center(); + m_nodes.prepend(centerNode); + m_closed = true; + } + else + { + // Chord leaves the wrap-around segment's handles unset, which + // falls through to QPainterPath::closeSubpath()'s own implicit + // straight line -- exactly the chord behaviour -- when m_closed + // is true; NoClosure is the same node list, just left open. + m_nodes = bezierNodesForArc(r, m_startAngle, spanAngle()); + m_closed = (m_arcClosure == Chord); + } + m_shapeType = Path; + } const QDomElement after = snapshotXml(); if (diagram()) { auto *undo = new PromoteShapeCommand(this, before, after); - undo->setText(tr("Convertir %1 en polyligne").arg(name())); + undo->setText(m_shapeType == Path + ? tr("Convertir %1 en courbe de Bézier").arg(originalName) + : tr("Convertir %1 en polyligne").arg(originalName)); diagram()->undoStack().push(undo); } rebuildHandles(); } +/** + @brief QetShapeItem::bezierNodesForArc + Bezier approximation of an elliptical arc, split into <=90-degree + segments (the standard cap for this technique to stay visually + exact -- a single segment starts drifting noticeably past that). + Each segment's handle length is (4/3)*tan(segment_span/4), the + general-angle form of the well-known ~0.5523 "kappa" constant for + an exact quarter circle. A full 360-degree span is a special case: + it produces exactly `segments` nodes rather than `segments+1` + (the very last one would just be a duplicate of the first at the + same anchor point) and wires the wrap-around segment's own handles + explicitly, so the loop closes as a continuous curve rather than + the straight "chord" line a generic closed-path wrap-around would + otherwise fall back to. + @param rect the ellipse's bounding rect + @param startAngleDeg arc start angle, matching QPainterPath::arcTo's own convention + @param spanAngleDeg arc angular span, same convention (may be negative) + @return nodes forming the arc; caller sets Path/m_closed and prepends + a centre node itself for a Pie-style closure +*/ +QVector<QetShapeItem::PathNode> QetShapeItem::bezierNodesForArc(const QRectF &rect, qreal startAngleDeg, qreal spanAngleDeg) +{ + const bool fullLoop = qFuzzyCompare(qAbs(spanAngleDeg), 360.0); + const qreal cx = rect.center().x(), cy = rect.center().y(); + const qreal rx = rect.width() / 2.0, ry = rect.height() / 2.0; + + auto pointAt = [&](qreal angleDeg) { + const qreal a = qDegreesToRadians(angleDeg); + return QPointF(cx + rx * qCos(a), cy - ry * qSin(a)); + }; + auto tangentAt = [&](qreal angleDeg) { + const qreal a = qDegreesToRadians(angleDeg); + return QPointF(-rx * qSin(a), -ry * qCos(a)); + }; + + const int segments = qMax(1, int(qCeil(qAbs(spanAngleDeg) / 90.0))); + const qreal segSpan = spanAngleDeg / segments; + const qreal handleLen = (4.0 / 3.0) * qTan(qDegreesToRadians(qAbs(segSpan)) / 4.0); + + const int nodeCount = fullLoop ? segments : segments + 1; + QVector<PathNode> nodes(nodeCount); + for (int i = 0; i < nodeCount; ++i) + { + nodes[i].anchor = pointAt(startAngleDeg + i * segSpan); + nodes[i].kind = NodeKind::Smooth; + } + for (int i = 0; i < nodeCount; ++i) + { + const QPointF tangent = tangentAt(startAngleDeg + i * segSpan); + if (fullLoop || i < nodeCount - 1) + nodes[i].outHandle = tangent * handleLen; + if (fullLoop || i > 0) + nodes[i % nodeCount].inHandle = -tangent * handleLen; + } + return nodes; +} + +/** + @brief QetShapeItem::bezierNodesForRoundedRect + Bezier equivalent of QPainterPath::addRoundedRect(): 8 anchors (each + edge's two ends), straight lines along the 4 edges, and a Bezier + quarter-turn at each of the 4 corners using the same handle-length + formula as bezierNodesForArc() (with segSpan fixed at 90 degrees, + since a rounded rect's corners always are). xRadius/yRadius are + clamped to at most half the rect's own width/height, matching how + QPainterPath::addRoundedRect() itself behaves for an + over-large radius. + @param rect the rectangle's own corner points, as a QRectF + @param xRadius corner radius along the x axis + @param yRadius corner radius along the y axis + @return 8 nodes forming the closed rounded-rectangle outline +*/ +QVector<QetShapeItem::PathNode> QetShapeItem::bezierNodesForRoundedRect(const QRectF &rect, qreal xRadius, qreal yRadius) +{ + const QRectF r = rect.normalized(); + const qreal rx = qBound(0.0, xRadius, r.width() / 2.0); + const qreal ry = qBound(0.0, yRadius, r.height() / 2.0); + const qreal kx = rx * 0.5522847498; + const qreal ky = ry * 0.5522847498; + + const QVector<QPointF> anchors = { + QPointF(r.left() + rx, r.top()), + QPointF(r.right() - rx, r.top()), + QPointF(r.right(), r.top() + ry), + QPointF(r.right(), r.bottom() - ry), + QPointF(r.right() - rx, r.bottom()), + QPointF(r.left() + rx, r.bottom()), + QPointF(r.left(), r.bottom() - ry), + QPointF(r.left(), r.top() + ry), + }; + + QVector<PathNode> nodes; + nodes.reserve(8); + for (const QPointF &p : anchors) + { + PathNode n; + n.anchor = p; + n.kind = NodeKind::Smooth; + nodes.append(n); + } + + nodes[1].outHandle = QPointF(kx, 0); nodes[2].inHandle = QPointF(0, -ky); + nodes[3].outHandle = QPointF(0, ky); nodes[4].inHandle = QPointF(kx, 0); + nodes[5].outHandle = QPointF(-kx, 0); nodes[6].inHandle = QPointF(0, ky); + nodes[7].outHandle = QPointF(0, -ky); nodes[0].inHandle = QPointF(-kx, 0); + + return nodes; +} + /** @brief QetShapeItem::mirror Flips the shape around its own current pivot -- horizontal negates diff --git a/sources/qetgraphicsitem/qetshapeitem.h b/sources/qetgraphicsitem/qetshapeitem.h index f30459189..949b7b86c 100644 --- a/sources/qetgraphicsitem/qetshapeitem.h +++ b/sources/qetgraphicsitem/qetshapeitem.h @@ -249,7 +249,9 @@ class QetShapeItem : public QetGraphicsItem void repositionHandles(); // moves existing handler items -- safe to call every frame of a live drag void insertPoint(); void removePoint(); - void convertToPathExplicitly(); // context-menu action; see promoteRectangleOrEllipseToPolygon() + void convertToPathOrPolygon(); // context-menu action; see promoteRectangleOrEllipseToPolygon() for the separate Alt+drag mechanism + static QVector<PathNode> bezierNodesForArc(const QRectF &rect, qreal startAngleDeg, qreal spanAngleDeg); + static QVector<PathNode> bezierNodesForRoundedRect(const QRectF &rect, qreal xRadius, qreal yRadius); void mirror(bool horizontal); // context-menu action: flips scaleFactorX (horizontal) or scaleFactorY (vertical) around the current pivot void setNodeKind(int nodeIndex, NodeKind kind); // context-menu action on a Path node From 296f142036bb587feb14cfb9787868b11612eed1 Mon Sep 17 00:00:00 2001 From: Andre Rummler <andre.rummler@cern.ch> Date: Mon, 7 Sep 2026 10:18:39 +0200 Subject: [PATCH 47/95] Adding icons to graphs and image operations. --- .../scalable/apps/hidef/edit-opacity.svg | 14 ++++++++++++++ .../hidef/image-flip-horizontal-symbolic.svg | 13 +++++++++++++ .../apps/hidef/image-flip-vertical-symbolic.svg | 13 +++++++++++++ .../scalable/apps/hidef/transform-crop.svg | 12 ++++++++++++ ico/generated/ellipse-to-bezier.svg | 13 +++++++++++++ ico/generated/rect-to-bezier.svg | 13 +++++++++++++ ico/generated/rect-to-polyline.svg | 15 +++++++++++++++ qelectrotech.qrc | 7 +++++++ sources/qetgraphicsitem/diagramimageitem.cpp | 11 ++++++++--- sources/qetgraphicsitem/qetshapeitem.cpp | 17 ++++++++++++++--- sources/qeticons.cpp | 14 ++++++++++++++ sources/qeticons.h | 7 +++++++ 12 files changed, 143 insertions(+), 6 deletions(-) create mode 100644 ico/breeze-icons/scalable/apps/hidef/edit-opacity.svg create mode 100644 ico/breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg create mode 100644 ico/breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg create mode 100644 ico/breeze-icons/scalable/apps/hidef/transform-crop.svg create mode 100644 ico/generated/ellipse-to-bezier.svg create mode 100644 ico/generated/rect-to-bezier.svg create mode 100644 ico/generated/rect-to-polyline.svg diff --git a/ico/breeze-icons/scalable/apps/hidef/edit-opacity.svg b/ico/breeze-icons/scalable/apps/hidef/edit-opacity.svg new file mode 100644 index 000000000..186cbf3d6 --- /dev/null +++ b/ico/breeze-icons/scalable/apps/hidef/edit-opacity.svg @@ -0,0 +1,14 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"> + <style type="text/css" id="current-color-scheme"> + .ColorScheme-Text { + color:#232629; + } + </style> + <g transform="translate(1,1)"> + <g class="ColorScheme-Text" fill="currentColor"> + <path d="m6 14c0 2.77 2.23 5 5 5s5-2.23 5-5z" fill-rule="evenodd" opacity=".66"/> + <path d="m7.482 10c-.34.586-.65 1.148-.886 1.676a4.958 4.958 0 0 0 -.596 2.324h10c0-.845-.228-1.627-.596-2.324a18.518 18.518 0 0 0 -.886-1.676z" fill-rule="evenodd" opacity=".33"/> + <path d="m11 3c-.973 3.405-3.354 6.332-4.404 8.676a4.958 4.958 0 0 0 -.596 2.324c0 2.77 2.23 5 5 5s5-2.23 5-5c0-.845-.228-1.627-.596-2.324-1.05-2.344-3.431-5.271-4.404-8.676zm0 2.393c1.194 2.668 2.747 5.027 3.492 6.691l.012.03.016.029a3.94 3.94 0 0 1 .48 1.857c0 2.233-1.767 4-4 4a3.97 3.97 0 0 1 -4-4c0-.665.177-1.283.48-1.857l.016-.03.012-.029c.745-1.664 2.298-4.023 3.492-6.691z"/> + </g> + </g> +</svg> diff --git a/ico/breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg b/ico/breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg new file mode 100644 index 000000000..6967dc851 --- /dev/null +++ b/ico/breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg @@ -0,0 +1,13 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"> + <defs id="defs3051"> + <style type="text/css" id="current-color-scheme"> + .ColorScheme-Text { + color:#232629; + } + </style> + </defs> + <path style="fill:currentColor;fill-opacity:1;stroke:none" + d="M 4 2 L 4 3 L 5 3 L 5 2 L 4 2 z M 11 2 L 11 3 L 12 3 L 12 2 L 11 2 z M 2 4 L 2 12 L 7 12 L 7 10 L 9 10 L 9 12 L 14 12 L 14 4 L 9 4 L 9 6 L 7 6 L 7 4 L 2 4 z M 3 5 L 6 5 L 6 11 L 3 11 L 3 5 z M 10 5 L 13 5 L 13 11 L 10 11 L 10 5 z M 11 6 L 11 10 L 12 10 L 12 6 L 11 6 z M 7 7 L 9 7 L 9 9 L 7 9 L 7 7 z M 4 13 L 4 14 L 5 14 L 5 13 L 4 13 z M 11 13 L 11 14 L 12 14 L 12 13 L 11 13 z " + class="ColorScheme-Text" + /> +</svg> diff --git a/ico/breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg b/ico/breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg new file mode 100644 index 000000000..342d873a6 --- /dev/null +++ b/ico/breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg @@ -0,0 +1,13 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"> + <defs id="defs3051"> + <style type="text/css" id="current-color-scheme"> + .ColorScheme-Text { + color:#232629; + } + </style> + </defs> + <path style="fill:currentColor;fill-opacity:1;stroke:none" + d="M 4 2 L 4 7 L 6 7 L 6 9 L 4 9 L 4 14 L 12 14 L 12 9 L 10 9 L 10 7 L 12 7 L 12 2 L 4 2 z M 5 3 L 11 3 L 11 6 L 5 6 L 5 3 z M 2 4 L 2 5 L 3 5 L 3 4 L 2 4 z M 13 4 L 13 5 L 14 5 L 14 4 L 13 4 z M 7 7 L 9 7 L 9 9 L 7 9 L 7 7 z M 5 10 L 11 10 L 11 13 L 5 13 L 5 10 z M 2 11 L 2 12 L 3 12 L 3 11 L 2 11 z M 6 11 L 6 12 L 10 12 L 10 11 L 6 11 z M 13 11 L 13 12 L 14 12 L 14 11 L 13 11 z " + class="ColorScheme-Text" + /> +</svg> diff --git a/ico/breeze-icons/scalable/apps/hidef/transform-crop.svg b/ico/breeze-icons/scalable/apps/hidef/transform-crop.svg new file mode 100644 index 000000000..edd5fa4b7 --- /dev/null +++ b/ico/breeze-icons/scalable/apps/hidef/transform-crop.svg @@ -0,0 +1,12 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"> + <defs id="defs3051"> + <style type="text/css" id="current-color-scheme"> + .ColorScheme-Text { + color:#232629; + } + </style> + </defs> + <g transform="translate(1,1)"> + <path style="fill:currentColor;fill-opacity:1;stroke:none" d="M 3 3 L 3 5 L 3 6 L 6 6 L 6 5 L 6 3 L 4 3 L 3 3 z M 16 3 L 16 4 L 16 5 L 16 6 L 17 6 L 18 6 L 19 6 L 19 5 L 19 4 L 19 3 L 16 3 z M 4 4 L 5 4 L 5 5 L 4 5 L 4 4 z M 17 4 L 18 4 L 18 5 L 17 5 L 17 4 z M 7 5 L 7 6 L 9 6 L 9 5 L 7 5 z M 10 5 L 10 6 L 12 6 L 12 5 L 10 5 z M 13 5 L 13 6 L 15 6 L 15 5 L 13 5 z M 5 7 L 5 9 L 6 9 L 6 7 L 5 7 z M 16 7 L 16 9 L 17 9 L 17 7 L 16 7 z M 5 10 L 5 12 L 6 12 L 6 10 L 5 10 z M 16 10 L 16 12 L 17 12 L 17 10 L 16 10 z M 5 13 L 5 15 L 6 15 L 6 13 L 5 13 z M 16 13 L 16 15 L 17 15 L 17 13 L 16 13 z M 3 16 L 3 17 L 3 19 L 4 19 L 5 19 L 6 19 L 6 16 L 3 16 z M 7 16 L 7 17 L 9 17 L 9 16 L 7 16 z M 10 16 L 10 17 L 12 17 L 12 16 L 10 16 z M 13 16 L 13 17 L 15 17 L 15 16 L 13 16 z M 16 16 L 16 17 L 16 18 L 16 19 L 17 19 L 18 19 L 19 19 L 19 18 L 19 17 L 19 16 L 17 16 L 16 16 z M 4 17 L 5 17 L 5 18 L 4 18 L 4 17 z M 17 17 L 18 17 L 18 18 L 17 18 L 17 17 z " class="ColorScheme-Text"/> + </g> +</svg> diff --git a/ico/generated/ellipse-to-bezier.svg b/ico/generated/ellipse-to-bezier.svg new file mode 100644 index 000000000..c041ba058 --- /dev/null +++ b/ico/generated/ellipse-to-bezier.svg @@ -0,0 +1,13 @@ +<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" role="img" xmlns:c2pa="http://c2pa.org/manifest"><metadata><c2pa:manifest>AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTpkNDA5NTZkMS0yNDRjLTQ2OGItYTNjZi1kOGNkMWJiZjJjNWMAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaNHa9W+jncUxYLjA5T/fHNAAAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDpiMjRkMmNiNS02ZDU5LTRhZGMtYmY4My1iNmQ2MTM0YTMzMTVscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNoU/JskrAOHlKW+39wbkwl5AAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFgg8js9kdGdiYJItlQxXai3cVkS1BURvT+xjZCCSt0ZaY2kZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaFrp/I01n8o3SfwCAu5AIIgAAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRNAAAAAAAAAAAAAAAAAGRoYXNoWCDeaq8DqUieyVsNvM+vt+d8bTEEIrdIdQXiV6a7aG54BWRuYW1lbmp1bWJmIG1hbmlmZXN0amV4Y2x1c2lvbnOBomVzdGFydBidZmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOmQ0MDk1NmQxLTI0NGMtNDY4Yi1hM2NmLWQ4Y2QxYmJmMmM1Yy9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOjU1NTg2MjkyLWU4NTktNDU3MC04NGI1LTRjNTNlNDY4MTc0ZXJjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCDyOz2R0Z2Jgki2VDFdqLdxWRLUFRG9P7GNkIJK3RlpjaJjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFgg1AiqYQ9UV1TMYqxD43UPFynZ5V0nAfXrfTo9OyaZ+cGiY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFggdMNi2v26PVYkXmjZyL7K8tFzP0+jRgIVxpnwOQ9gFJ90Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQNrJ3qg2K2hh9KpSVzl3UGL4M1J3ved4gLaHdbxA/Vfn4G8PcH4NeQrrk2fcULljrqaw6ZYCFuIyYTIkhQ660No=</c2pa:manifest></metadata> +<title>Convert ellipse to bezier path + + + + + + + + + + + diff --git a/ico/generated/rect-to-bezier.svg b/ico/generated/rect-to-bezier.svg new file mode 100644 index 000000000..98f849e2a --- /dev/null +++ b/ico/generated/rect-to-bezier.svg @@ -0,0 +1,13 @@ +AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTphMTgyYWNlNy0xYmJkLTQzYmQtYmFiMi1kMTBlMmJlNzBiNTQAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaFNd79FboARAaP6M3PQPO8IAAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDowOWQ2MDg3Ni1iYjQ1LTQ5NDEtODhiMi1kNjVhYjdmNWMyMDJscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNoXS5HglraT09MuST1+rfbcAAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFggLihfGkmdS5IpQR3YeGqBhs6ZkqcxbAHAYDm+z+4vM8CkZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaAvbbUkVOHH4ZCysG6DWn+8AAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRNAAAAAAAAAAAAAAAAAGRoYXNoWCCcMegXDTjLbH4jmbUdk0PuX1tnQ/gV6VtgVf1DBe0YgGRuYW1lbmp1bWJmIG1hbmlmZXN0amV4Y2x1c2lvbnOBomVzdGFydBidZmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOmExODJhY2U3LTFiYmQtNDNiZC1iYWIyLWQxMGUyYmU3MGI1NC9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOjRjNGVmNmU2LTU0YzgtNGM2Mi1hMDk5LTEzZTAzZmMwZGVhNnJjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCAuKF8aSZ1LkilBHdh4aoGGzpmSpzFsAcBgOb7P7i8zwKJjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFggu5sSUccV9ItEQkWhcG53fBuHMS8d+Irs8N2D8LmHfziiY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFggi0ewqxLdfycluy0zCuaJrLNVK3aEMTD9mcGPaz0OtKR0Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQEfUjmTUDTBdWe5F2ORfpgLKkj3P2znz3b6ZHFi/HmEacHMG3wdXw4e9gBowdrOMqJXG+GS0Mi7ElEzpcRnStO0= +Convert rectangle to bezier path + + + + + + + + + + + diff --git a/ico/generated/rect-to-polyline.svg b/ico/generated/rect-to-polyline.svg new file mode 100644 index 000000000..956f0b4f5 --- /dev/null +++ b/ico/generated/rect-to-polyline.svg @@ -0,0 +1,15 @@ +AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTo5Njk4YzA4Yi0wNzc1LTQ3ZGUtOTUzMy1lMTllMTMwNTk2OGUAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaHVhCFMQ+YCaUIaehiRlEykAAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDo4Yjc3NjczOC1hYmJhLTRlZWEtOTUxZi1hZTA4NzhjMjRmY2RscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNoRw0Rk1rtkhshpZAKc5PqUgAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFgg93lOZT8pGu+IWHntnpJ0y9pNpWi9LsEPrPSP6zu3S3ekZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaCGAz99s1CYSTsHP9ygTudsAAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRNAAAAAAAAAAAAAAAAAGRoYXNoWCDGF286ZMxdg/RjdCwKf9mBtpW4Rt8trCv1OG7iYm7Z2mRuYW1lbmp1bWJmIG1hbmlmZXN0amV4Y2x1c2lvbnOBomVzdGFydBidZmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOjk2OThjMDhiLTA3NzUtNDdkZS05NTMzLWUxOWUxMzA1OTY4ZS9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOjM1OWRmMTk2LTJiNTctNDE3MS04MGVjLTlhMjM4NmU0N2EwMHJjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCD3eU5lPyka74hYee2eknTL2k2laL0uwQ+s9I/rO7dLd6JjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFgg9Z6ffypTiEj67qxFt1K0w9OmK7Ue/R29dSQExYtMpj2iY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFgg9c62eLY86fBHk0TDIUicPC7IgNw+PX2usoc1r4Z10jp0Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQG5tbc1u+c4EVF+/oZspFHn8tPAKtUy2FGultvsEqB93Y8f9CSQsAG4ClWq/eiF7YeAJa/hEA4iDh7ogCcGD8hs= +Convert rectangle to polyline + + + + + + + + + + + + + diff --git a/qelectrotech.qrc b/qelectrotech.qrc index 17fb20b03..0d1d5716e 100644 --- a/qelectrotech.qrc +++ b/qelectrotech.qrc @@ -549,6 +549,13 @@ ico/breeze-icons/scalable/mimetypes/small/48x48/application-x-qet-project.svgz ico/breeze-icons/scalable/mimetypes/small/48x48/application-x-qet-titleblock.svgz ico/breeze-icons/scalable/apps/hidef/draw-bezier-curves.svg + ico/breeze-icons/scalable/apps/hidef/transform-crop.svg + ico/breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg + ico/breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg + ico/breeze-icons/scalable/apps/hidef/edit-opacity.svg + ico/generated/rect-to-polyline.svg + ico/generated/rect-to-bezier.svg + ico/generated/ellipse-to-bezier.svg ico/16x16/object-group.png ico/mac_icon/elmt.icns ico/mac_icon/qelectrotech.icns diff --git a/sources/qetgraphicsitem/diagramimageitem.cpp b/sources/qetgraphicsitem/diagramimageitem.cpp index 550a64e9d..9bb90e7d2 100644 --- a/sources/qetgraphicsitem/diagramimageitem.cpp +++ b/sources/qetgraphicsitem/diagramimageitem.cpp @@ -24,6 +24,7 @@ #include "../qet.h" #include "../qetapp.h" #include "../qetdiagrameditor.h" +#include "../qeticons.h" #include "../ui/imagepropertieswidget.h" #include "../ui/imagecropdialog.h" #include "../ui/imagetransparentcolordialog.h" @@ -1591,22 +1592,26 @@ void DiagramImageItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) connect(saveOriginalAs, &QAction::triggered, this, &DiagramImageItem::saveOriginalImageAs); QAction *transparentColor = menu.data()->addAction(tr("Couleur transparente...")); + transparentColor->setIcon(QET::Icons::EditOpacity); connect(transparentColor, &QAction::triggered, this, &DiagramImageItem::setTransparentColor); QAction *cropAction = menu.data()->addAction(tr("Rogner...")); + cropAction->setIcon(QET::Icons::TransformCrop); connect(cropAction, &QAction::triggered, this, &DiagramImageItem::crop); QAction *mirrorH = menu.data()->addAction(tr("Miroir horizontal")); + mirrorH->setIcon(QET::Icons::ImageFlipHorizontal); QAction *mirrorV = menu.data()->addAction(tr("Miroir vertical")); + mirrorV->setIcon(QET::Icons::ImageFlipVertical); connect(mirrorH, &QAction::triggered, this, [this]() { mirror(true); }); connect(mirrorV, &QAction::triggered, this, [this]() { mirror(false); }); QAction *restoreRatio = menu.data()->addAction(tr("Restaurer les proportions")); connect(restoreRatio, &QAction::triggered, this, &DiagramImageItem::restoreAspectRatio); - menu.data()->addSeparator(); - QAction *properties = menu.data()->addAction(tr("Propriétés...")); - connect(properties, &QAction::triggered, this, &DiagramImageItem::editProperty); + // menu.data()->addSeparator(); + // QAction *properties = menu.data()->addAction(tr("Propriétés...")); + // connect(properties, &QAction::triggered, this, &DiagramImageItem::editProperty); menu.data()->addSeparator(); menu.data()->addActions(d_view->contextMenuActions()); diff --git a/sources/qetgraphicsitem/qetshapeitem.cpp b/sources/qetgraphicsitem/qetshapeitem.cpp index 6c9a590c2..cca68d38c 100644 --- a/sources/qetgraphicsitem/qetshapeitem.cpp +++ b/sources/qetgraphicsitem/qetshapeitem.cpp @@ -1108,17 +1108,28 @@ void QetShapeItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) // regardless of what's about to happen. const bool needsBezier = (m_shapeType == Ellipse) || (m_xRadius > 0 || m_yRadius > 0); QAction *convert = menu.data()->addAction(needsBezier ? tr("Convertir en courbe de Bézier") : tr("Convertir en polyligne")); + if(needsBezier && m_shapeType == Rectangle) { + convert->setIcon(QET::Icons::RectToBezier); + } + else if(needsBezier && m_shapeType == Ellipse) { + convert->setIcon(QET::Icons::EllipseToBezier); + } + else { + convert->setIcon(QET::Icons::RectToPolyline); + } connect(convert, &QAction::triggered, this, &QetShapeItem::convertToPathOrPolygon); } QAction *mirrorH = menu.data()->addAction(tr("Miroir horizontal")); + mirrorH->setIcon(QET::Icons::ImageFlipHorizontal); QAction *mirrorV = menu.data()->addAction(tr("Miroir vertical")); + mirrorV->setIcon(QET::Icons::ImageFlipVertical); connect(mirrorH, &QAction::triggered, this, [this]() { mirror(true); }); connect(mirrorV, &QAction::triggered, this, [this]() { mirror(false); }); - menu.data()->addSeparator(); - QAction *properties = menu.data()->addAction(tr("Propriétés...")); - connect(properties, &QAction::triggered, this, &QetShapeItem::editProperty); + //menu.data()->addSeparator(); + //QAction *properties = menu.data()->addAction(tr("Propriétés...")); + //connect(properties, &QAction::triggered, this, &QetShapeItem::editProperty); menu.data()->addSeparator(); menu.data()->addActions(d_view->contextMenuActions()); diff --git a/sources/qeticons.cpp b/sources/qeticons.cpp index 9cde7a0b2..309ef423c 100644 --- a/sources/qeticons.cpp +++ b/sources/qeticons.cpp @@ -65,6 +65,7 @@ namespace QET { QIcon EditCopy; QIcon EditCut; QIcon EditDelete; + QIcon EditOpacity; QIcon EditPaste; QIcon EditRedo; QIcon EditRename; @@ -86,6 +87,7 @@ namespace QET { QIcon ElementEdit; QIcon ElementNew; QIcon ElementSmall; + QIcon EllipseToBezier; QIcon EndLineCircle; QIcon EndLineDiamond; QIcon EndLineNone; @@ -115,6 +117,8 @@ namespace QET { QIcon Hide; QIcon Home; QIcon HotSpot; + QIcon ImageFlipHorizontal; + QIcon ImageFlipVertical; QIcon InsertImage; QIcon Lower; QIcon IC_MoveFile; @@ -156,6 +160,8 @@ namespace QET { QIcon QETOxygenLogo; QIcon QtLogo; QIcon Raise; + QIcon RectToBezier; + QIcon RectToPolyline; QIcon Remove; QIcon Restore; QIcon RunDxf; @@ -169,6 +175,7 @@ namespace QET { QIcon TitleBlock; QIcon TitleBlockBottom; QIcon TitleBlockRight; + QIcon TransformCrop; QIcon TransformRotate; QIcon UserInformations; QIcon ViewFitWidth; @@ -470,6 +477,7 @@ void QET::Icons::initIcons() EditCut .addFile(":/ico/22x22/edit-cut.png"); EditDelete .addFile(":/ico/16x16/edit-delete.png"); EditDelete .addFile(":/ico/22x22/edit-delete.png"); + EditOpacity .addFile(":/ico/breeze-icons/scalable/apps/hidef/edit-opacity.svg"); EditPaste .addFile(":/ico/22x22/edit-paste.png"); EditPaste .addFile(":/ico/16x16/edit-paste.png"); if (rtl) { @@ -518,6 +526,7 @@ void QET::Icons::initIcons() ElementNew .addFile(":/ico/16x16/element-new.png"); ElementNew .addFile(":/ico/22x22/element-new.png"); ElementSmall .addFile(":/ico/16x16/element.png"); + EllipseToBezier .addFile(":/ico/generated/ellipse-to-bezier.svg"); EndLineCircle .addFile(":/ico/16x16/endline-circle.png"); EndLineDiamond .addFile(":/ico/16x16/endline-diamond.png"); EndLineNone .addFile(":/ico/16x16/endline-none.png"); @@ -557,6 +566,8 @@ void QET::Icons::initIcons() Home .addFile(":/ico/16x16/go-home.png"); Home .addFile(":/ico/22x22/go-home.png"); HotSpot .addFile(":/ico/22x22/hotspot.png"); + ImageFlipHorizontal .addFile(":/ico/breeze-icons/scalable/apps/hidef/image-flip-horizontal-symbolic.svg"); + ImageFlipVertical .addFile(":/ico/breeze-icons/scalable/apps/hidef/image-flip-vertical-symbolic.svg"); InsertImage .addFile(":/ico/22x22/insert-image.png"); Lower .addFile(":/ico/22x22/lower.png"); IC_MoveFile .addFile(":/ico/16x16/item-move.png"); @@ -615,6 +626,8 @@ void QET::Icons::initIcons() QETVideo .addFile(":/ico/16x16/kdenlive-show-video.png"); QtLogo .addFile(":/ico/16x16/qt.png"); Raise .addFile(":/ico/22x22/raise.png"); + RectToBezier .addFile(":/ico/generated/rect-to-bezier.svg"); + RectToPolyline .addFile(":/ico/generated/rect-to-polyline.svg"); Remove .addFile(":/ico/16x16/list-remove.png"); Remove .addFile(":/ico/22x22/list-remove.png"); resize_image .addFile(":/ico/22x22/transform-scale.png"); @@ -633,6 +646,7 @@ void QET::Icons::initIcons() TitleBlock .addFile(":/ico/22x22/label.png"); TitleBlockBottom .addFile(":/ico/22x22/titleblock-bottom.png"); TitleBlockRight .addFile(":/ico/22x22/titleblock-right.png"); + TransformCrop .addFile(":/ico/breeze-icons/scalable/apps/hidef/transform-crop.svg"); TransformRotate .addFile(":/ico/16x16/transform-rotate.png"); UserInformations .addFile(":/ico/16x16/preferences-desktop-user.png"); UserInformations .addFile(":/ico/22x22/preferences-desktop-user.png"); diff --git a/sources/qeticons.h b/sources/qeticons.h index 5c0e981da..d77b897fc 100644 --- a/sources/qeticons.h +++ b/sources/qeticons.h @@ -72,6 +72,7 @@ namespace QET { extern QIcon EditCopy; extern QIcon EditCut; extern QIcon EditDelete; + extern QIcon EditOpacity; extern QIcon EditPaste; extern QIcon EditRedo; extern QIcon EditRename; @@ -92,6 +93,7 @@ namespace QET { extern QIcon ElementDelete; extern QIcon ElementEdit; extern QIcon ElementNew; + extern QIcon EllipseToBezier; extern QIcon EndLineCircle; extern QIcon EndLineDiamond; extern QIcon EndLineNone; @@ -121,6 +123,8 @@ namespace QET { extern QIcon Hide; extern QIcon Home; extern QIcon HotSpot; + extern QIcon ImageFlipHorizontal; + extern QIcon ImageFlipVertical; extern QIcon InsertImage; extern QIcon Lower; extern QIcon IC_MoveFile; @@ -164,6 +168,8 @@ namespace QET { extern QIcon QETOxygenLogo; extern QIcon QtLogo; extern QIcon Raise; + extern QIcon RectToBezier; + extern QIcon RectToPolyline; extern QIcon Remove; extern QIcon Restore; extern QIcon RunDxf; @@ -177,6 +183,7 @@ namespace QET { extern QIcon TitleBlock; extern QIcon TitleBlockBottom; extern QIcon TitleBlockRight; + extern QIcon TransformCrop; extern QIcon TransformRotate; extern QIcon UserInformations; extern QIcon ViewFitWidth; From bd5cff4211b61408d80e5f7780d0d16afeb361d5 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Mon, 7 Sep 2026 20:54:18 +1200 Subject: [PATCH 48/95] Add a unit test locking in Diagram::toXml()'s coordinate sort order Follow-up to the positionKey() fix merged directly in #779 (b2f4ef5d2): per review request, add a small regression test so this class of bug (fixed-precision "%.4f" formatting compares out of numeric order once the integer part's digit count differs) can't silently reappear. positionKey()/coordinateKey() move out of diagram.cpp's anonymous namespace into a small header-only diagramsortkeys.h so the test can link against the exact same code Diagram::toXml() uses, instead of duplicating the algorithm. Behavior is unchanged. tst_diagramsortkeys covers: single- vs double-digit, double- vs triple-digit, negative-vs-negative, negative-vs-positive, and negative-vs-zero coordinate pairs, plus sub-precision deltas. Co-Authored-By: Claude Sonnet 5 --- sources/diagram.cpp | 21 ++--------- sources/diagramsortkeys.h | 53 ++++++++++++++++++++++++++++ tests/qttest/CMakeLists.txt | 8 +++++ tests/qttest/tst_diagramsortkeys.cpp | 39 ++++++++++++++++++++ 4 files changed, 102 insertions(+), 19 deletions(-) create mode 100644 sources/diagramsortkeys.h create mode 100644 tests/qttest/tst_diagramsortkeys.cpp diff --git a/sources/diagram.cpp b/sources/diagram.cpp index 3c673c86c..55873c86a 100644 --- a/sources/diagram.cpp +++ b/sources/diagram.cpp @@ -40,30 +40,13 @@ #include "undocommand/addelementtextcommand.h" #include "qetinformation.h" #include "qetproject.h" +#include "diagramsortkeys.h" #include #include #include namespace { - /// Format a coordinate as a string that sorts the same way the number - /// does. Plain fixed-precision formatting ("%.4f") does NOT do this -- - /// e.g. "15.0000" sorts before "5.0000" as text even though 15 > 5 -- - /// so shift into a non-negative range and zero-pad to a fixed width - /// before comparing. - QString coordinateKey(double v) - { - //Diagram coordinates are nowhere near this range; the offset and - //width just need to be big enough that shifted values are always - //non-negative and always the same digit count. - constexpr double offset = 1e9; - qint64 scaled = qint64(qRound64((v + offset) * 10000.0)); - return QStringLiteral("%1").arg(scaled, 20, 10, QLatin1Char('0')); - } - - QString positionKey(const QPointF &pos) - { - return coordinateKey(pos.x()) + QLatin1Char('|') + coordinateKey(pos.y()); - } + using DiagramSortKeys::positionKey; /// Sort key for Diagram::toXml()'s block: the element's own /// diagram-local position, exactly what it's already saved as (x/y), diff --git a/sources/diagramsortkeys.h b/sources/diagramsortkeys.h new file mode 100644 index 000000000..17eb86e6b --- /dev/null +++ b/sources/diagramsortkeys.h @@ -0,0 +1,53 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#ifndef DIAGRAMSORTKEYS_H +#define DIAGRAMSORTKEYS_H + +#include +#include +#include + +/// Sort-key helpers used by Diagram::toXml() to serialize elements and +/// conductors in a deterministic order. Pulled into their own header +/// (instead of an anonymous namespace in diagram.cpp) so they can be +/// unit-tested directly -- see tests/qttest/tst_diagramsortkeys.cpp. +namespace DiagramSortKeys { + + /// Format a coordinate as a string that sorts the same way the number + /// does. Plain fixed-precision formatting ("%.4f") does NOT do this -- + /// e.g. "15.0000" sorts before "5.0000" as text even though 15 > 5 -- + /// so shift into a non-negative range and zero-pad to a fixed width + /// before comparing. + inline QString coordinateKey(double v) + { + //Diagram coordinates are nowhere near this range; the offset and + //width just need to be big enough that shifted values are always + //non-negative and always the same digit count. + constexpr double offset = 1e9; + qint64 scaled = qint64(qRound64((v + offset) * 10000.0)); + return QStringLiteral("%1").arg(scaled, 20, 10, QLatin1Char('0')); + } + + inline QString positionKey(const QPointF &pos) + { + return coordinateKey(pos.x()) + QLatin1Char('|') + coordinateKey(pos.y()); + } + +} + +#endif diff --git a/tests/qttest/CMakeLists.txt b/tests/qttest/CMakeLists.txt index 6908716ff..4ef9c62d8 100644 --- a/tests/qttest/CMakeLists.txt +++ b/tests/qttest/CMakeLists.txt @@ -77,3 +77,11 @@ target_link_libraries( ${KF_PRIVATE_LIBRARIES} ${QET_PRIVATE_LIBRARIES}) +# diagramsortkeys.h is a header-only helper (no QET link deps needed +# beyond Qt itself), so this test builds independently of the rest of +# the QET sources. +add_executable(tst_diagramsortkeys tst_diagramsortkeys.cpp) +add_test(NAME tst_diagramsortkeys COMMAND tst_diagramsortkeys) +target_include_directories(tst_diagramsortkeys PRIVATE ${QET_DIR}/sources) +target_link_libraries(tst_diagramsortkeys PRIVATE Qt::Test) + diff --git a/tests/qttest/tst_diagramsortkeys.cpp b/tests/qttest/tst_diagramsortkeys.cpp new file mode 100644 index 000000000..054bc752c --- /dev/null +++ b/tests/qttest/tst_diagramsortkeys.cpp @@ -0,0 +1,39 @@ +#include + +#include "diagramsortkeys.h" + +class tst_diagramsortkeys : public QObject +{ + Q_OBJECT + +private slots: + // positionKey() must sort the same way the underlying coordinates do, + // including across differing integer-part digit widths and across the + // negative/positive boundary. A previous implementation formatted + // coordinates with plain "%.4f" and compared the resulting strings + // directly, which sorted "15.0000" before "5.0000". + void sortsLikeNumbers_data() + { + QTest::addColumn("smaller"); + QTest::addColumn("larger"); + + QTest::newRow("single vs double digit") << QPointF(5.0, 0.0) << QPointF(15.0, 0.0); + QTest::newRow("double vs triple digit") << QPointF(0.0, 99.0) << QPointF(0.0, 100.0); + QTest::newRow("negative vs negative") << QPointF(-15.0, 0.0) << QPointF(-5.0, 0.0); + QTest::newRow("negative vs positive") << QPointF(-1.0, 0.0) << QPointF(1.0, 0.0); + QTest::newRow("negative vs zero") << QPointF(0.0, -0.0001) << QPointF(0.0, 0.0); + QTest::newRow("fractional precision") << QPointF(1.0001, 0.0) << QPointF(1.001, 0.0); + } + + void sortsLikeNumbers() + { + QFETCH(QPointF, smaller); + QFETCH(QPointF, larger); + + QVERIFY(DiagramSortKeys::positionKey(smaller) < DiagramSortKeys::positionKey(larger)); + } +}; + +QTEST_APPLESS_MAIN(tst_diagramsortkeys) + +#include "tst_diagramsortkeys.moc" From 1793dcb9a8f9e2686a4cd2ae15ab532234679434 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Mon, 7 Sep 2026 15:44:12 +0200 Subject: [PATCH 49/95] Revert "Feature: Terminal potential grouping" --- sources/editor/graphicspart/partterminal.cpp | 7 ----- sources/editor/graphicspart/partterminal.h | 5 ---- sources/editor/ui/terminaleditor.cpp | 22 -------------- sources/editor/ui/terminaleditor.h | 1 - sources/editor/ui/terminaleditor.ui | 22 +++----------- sources/properties/terminaldata.cpp | 5 ---- sources/properties/terminaldata.h | 12 -------- sources/qetgraphicsitem/terminal.cpp | 30 ++------------------ sources/qetgraphicsitem/terminal.h | 1 - 9 files changed, 6 insertions(+), 99 deletions(-) diff --git a/sources/editor/graphicspart/partterminal.cpp b/sources/editor/graphicspart/partterminal.cpp index 805ac7b54..0b85ba026 100644 --- a/sources/editor/graphicspart/partterminal.cpp +++ b/sources/editor/graphicspart/partterminal.cpp @@ -476,13 +476,6 @@ void PartTerminal::setMasterLabelIndex(int index) emit masterLabelIndexChanged(); } -void PartTerminal::setPotential(const QString &potential) -{ - if (d->m_potential == potential) return; - d->m_potential = potential; - emit potentialChanged(); -} - /** Updates the position of the second point according to the position and orientation of the terminal. diff --git a/sources/editor/graphicspart/partterminal.h b/sources/editor/graphicspart/partterminal.h index 10930e4c0..1ef413cd6 100644 --- a/sources/editor/graphicspart/partterminal.h +++ b/sources/editor/graphicspart/partterminal.h @@ -44,7 +44,6 @@ class PartTerminal : public CustomElementGraphicPart Q_PROPERTY(QColor label_color READ labelColor WRITE setLabelColor) Q_PROPERTY(bool use_master_label READ useMasterLabel WRITE setUseMasterLabel) Q_PROPERTY(int master_label_index READ masterLabelIndex WRITE setMasterLabelIndex) - Q_PROPERTY(QString potential READ potential WRITE setPotential) public: // constructors, destructor @@ -57,7 +56,6 @@ class PartTerminal : public CustomElementGraphicPart void orientationChanged(); void nameChanged(); void terminalTypeChanged(); - void potentialChanged(); void showNameChanged(); void labelPosChanged(); void labelFontChanged(); @@ -142,9 +140,6 @@ class PartTerminal : public CustomElementGraphicPart int masterLabelIndex() const { return d->m_master_label_index; } void setMasterLabelIndex(int index); - QString potential() const { return d->m_potential; } - void setPotential(const QString &potential); - void setNewUuid(); QRectF labelRect() const; diff --git a/sources/editor/ui/terminaleditor.cpp b/sources/editor/ui/terminaleditor.cpp index c2097853b..f3d23b7d9 100644 --- a/sources/editor/ui/terminaleditor.cpp +++ b/sources/editor/ui/terminaleditor.cpp @@ -84,7 +84,6 @@ void TerminalEditor::updateForm() ui->m_orientation_cb->setCurrentIndex(ui->m_orientation_cb->findData(m_part->property("orientation"))); ui->m_name_le->setText(m_part->terminalName()); ui->m_type_cb->setCurrentIndex(ui->m_type_cb->findData(m_part->terminalType())); - ui->m_potential_le->setText(m_part->potential()); ui->m_show_name_cb->setChecked(m_part->showName()); ui->m_label_x_dsb->setValue(m_part->labelPos().x()); @@ -264,24 +263,6 @@ void TerminalEditor::nameEdited() m_locked=false; } -void TerminalEditor::potentialEdited() -{ - if (m_locked) { - return; - } - - m_locked = true; - QString potential_(ui->m_potential_le->text()); - - if (m_part->potential() != potential_) - { - auto undo = new QPropertyUndoCommand(m_part, "potential", m_part->property("potential"), potential_); - undo->setText(tr("Modifier le potentiel d'une borne")); - undoStack().push(undo); - } - m_locked = false; -} - /** * @brief TerminalEditor::typeEdited */ @@ -476,8 +457,6 @@ void TerminalEditor::activeConnections(bool active) this, &TerminalEditor::labelAlignClicked); m_editor_connections << connect(ui->m_label_frame_cb, &QCheckBox::toggled, this, &TerminalEditor::labelFrameEdited); - m_editor_connections << connect(ui->m_potential_le, &QLineEdit::editingFinished, - this, &TerminalEditor::potentialEdited); m_editor_connections << connect(ui->m_use_master_label_cb, &QCheckBox::toggled, this, &TerminalEditor::useMasterLabelEdited); m_editor_connections << connect(ui->m_master_label_cb, QOverload::of(&QComboBox::activated), @@ -507,7 +486,6 @@ void TerminalEditor::activeChangeConnections(bool active) m_change_connections << connect(m_part, &PartTerminal::labelVAlignmentChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::labelFrameChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::labelColorChanged, this, &TerminalEditor::updateForm); - m_change_connections << connect(m_part, &PartTerminal::potentialChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::useMasterLabelChanged, this, &TerminalEditor::updateForm); m_change_connections << connect(m_part, &PartTerminal::masterLabelIndexChanged, this, &TerminalEditor::updateForm); } else { diff --git a/sources/editor/ui/terminaleditor.h b/sources/editor/ui/terminaleditor.h index 57f6ea5e6..7c15d9f2c 100644 --- a/sources/editor/ui/terminaleditor.h +++ b/sources/editor/ui/terminaleditor.h @@ -58,7 +58,6 @@ class TerminalEditor : public ElementItemEditor void orientationEdited(); void nameEdited(); void typeEdited(); - void potentialEdited(); void showNameEdited(); void labelPosEdited(); void labelFontClicked(); diff --git a/sources/editor/ui/terminaleditor.ui b/sources/editor/ui/terminaleditor.ui index 33eb50047..6dc2388cb 100644 --- a/sources/editor/ui/terminaleditor.ui +++ b/sources/editor/ui/terminaleditor.ui @@ -48,7 +48,7 @@ - + @@ -61,7 +61,7 @@ - + Nom : @@ -78,21 +78,7 @@ - - - - Potentiel: - - - - - - - Sans effet si "Isolation du potentiel" n'est pas cochée (toutes les bornes du bloc restent alors reliées). Si elle est cochée : les bornes partageant la même valeur restent reliées entre elles, les autres sont isolées. - - - - + Nom de la borne @@ -228,7 +214,7 @@ - + Étiquette du maître diff --git a/sources/properties/terminaldata.cpp b/sources/properties/terminaldata.cpp index f8a371107..1805ba3c9 100644 --- a/sources/properties/terminaldata.cpp +++ b/sources/properties/terminaldata.cpp @@ -129,9 +129,6 @@ QDomElement TerminalData::toXml(QDomDocument &xml_document) const xml_element.setAttribute("label_color", m_label_color.name()); } - if (!m_potential.isEmpty()) - xml_element.setAttribute("potential", m_potential); - // Save master label override settings if (m_use_master_label) { xml_element.setAttribute("use_master_label", "true"); @@ -210,8 +207,6 @@ bool TerminalData::fromXml (const QDomElement &xml_element) m_label_color = QColor(color_str); } - m_potential = xml_element.attribute("potential"); - // Read master label override settings m_use_master_label = (xml_element.attribute("use_master_label") == QLatin1String("true")); m_master_label_index = xml_element.attribute("master_label_index", "0").toInt(); diff --git a/sources/properties/terminaldata.h b/sources/properties/terminaldata.h index 7d269b4cd..9032e6b2c 100644 --- a/sources/properties/terminaldata.h +++ b/sources/properties/terminaldata.h @@ -103,18 +103,6 @@ class TerminalData : public PropertiesInterface */ QString m_name; - /** - @brief m_potential - An optional, symbol-author-chosen grouping identifier shared by - terminals that belong to the same physical terminal within - a multi-terminal block. When potential_isolating is enabled - on the parent element, terminals sharing a non-empty, - matching m_potential stay linked to each other; terminals - with different (or empty) values become isolated from each - other. Empty by default. - */ - QString m_potential; - /** @brief m_pos Position of the terminal. The second point is calculated diff --git a/sources/qetgraphicsitem/terminal.cpp b/sources/qetgraphicsitem/terminal.cpp index a09efec12..ec862b39c 100644 --- a/sources/qetgraphicsitem/terminal.cpp +++ b/sources/qetgraphicsitem/terminal.cpp @@ -927,18 +927,6 @@ TerminalData::Type Terminal::terminalType() const return d->m_type; } -/** - @brief Terminal::potential - @return this terminal's own potential-group identifier (@see - TerminalData::m_potential). - An author-chosen grouping used only - within a single multi-terminal element. -*/ -QString Terminal::potential() const -{ - return d->m_potential; -} - /** @brief Terminal::setUseMasterLabel Set whether this terminal uses a label from the master's contact group @@ -989,22 +977,8 @@ QList relatedPotentialTerminal ( { // English: Check if the user activated the potential isolation checkbox for this terminal if (terminal->parentElement()->elementInformations().value(QStringLiteral("potential_isolating")).toString() == QLatin1String("true")) { - // English: Potential is isolated -- but terminals sharing this - // terminal's own, non-empty potential-group identifier - // (@see TerminalData::m_potential, set per-terminal in the - // element editor) still belong to the same physical terminal - // and stay linked to each other. An empty/unset potential on - // every terminal reproduces the previous, fully-isolated - // behavior exactly, so existing elements are unaffected. - const QString this_potential = terminal->potential(); - QList same_potential; - if (!this_potential.isEmpty()) { - for (Terminal *t : terminal->parentElement()->terminals()) { - if (t != terminal && t->potential() == this_potential) - same_potential << t; - } - } - return same_potential; + // English: Potential is isolated. Return an empty list so it does not propagate to the other side. + return QList(); } QList terminals = terminal->parentElement()->terminals(); diff --git a/sources/qetgraphicsitem/terminal.h b/sources/qetgraphicsitem/terminal.h index e5e17b4fa..a6eae784c 100644 --- a/sources/qetgraphicsitem/terminal.h +++ b/sources/qetgraphicsitem/terminal.h @@ -79,7 +79,6 @@ class Terminal : public QGraphicsObject QString name () const; QString baseName () const; TerminalData::Type terminalType() const; - QString potential() const; bool useMasterLabel() const { return d->m_use_master_label; } void setUseMasterLabel(bool use); int masterLabelIndex() const { return d->m_master_label_index; } From 36dd1624d2adecf31aa2c08e3cd2c9ffdc045366 Mon Sep 17 00:00:00 2001 From: enesgursoy6110 Date: Tue, 8 Sep 2026 21:02:20 +0300 Subject: [PATCH 50/95] Show folio identity first in report link picker --- sources/ui/linksingleelementwidget.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/sources/ui/linksingleelementwidget.cpp b/sources/ui/linksingleelementwidget.cpp index 026ca251d..7cc04559d 100644 --- a/sources/ui/linksingleelementwidget.cpp +++ b/sources/ui/linksingleelementwidget.cpp @@ -353,8 +353,16 @@ void LinkSingleElementWidget::buildTree() QSettings settings; QVariant v = settings.value(QStringLiteral("link-element-widget/report-state")); - if(!v.isNull()) - ui->m_tree_widget->header()->restoreState(v.toByteArray()); + auto *header = ui->m_tree_widget->header(); + if (v.isNull() || !header->restoreState(v.toByteArray())) + { + // Keep logical column IDs stable for saved layouts, but show the + // folio identity first even when the candidate has no conductor. + for (int column = 5; column < 8; ++column) + header->moveSection(header->visualIndex(column), column - 5); + ui->m_tree_widget->resizeColumnToContents(5); + ui->m_tree_widget->resizeColumnToContents(6); + } } setUpCompleter(); From c265f0206c248a5110cafb141dd988210e635b13 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 9 Sep 2026 09:52:06 +1200 Subject: [PATCH 51/95] Fix Qt5 build: QLabel::pixmap() returns a pointer, not a value ClickableImageLabel::mousePressEvent() calls pixmap().isNull() and pixmap().width(). That is the Qt6 signature; in Qt5 QLabel::pixmap() returns const QPixmap * and the code does not compile: error: request for member 'isNull' in '...QLabel::pixmap()', which is of pointer type 'const QPixmap*' CMakeLists.txt defaults QT_VERSION_MAJOR to 5 when it is not specified, so a default configuration of master has not built since 6b577ee75. Read the pixmap once into a local, guarded the way the rest of the codebase handles this split, which also drops four repeated pixmap() calls in the same expression. Co-Authored-By: Claude Opus 5 --- sources/ui/imagetransparentcolordialog.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/sources/ui/imagetransparentcolordialog.cpp b/sources/ui/imagetransparentcolordialog.cpp index ce087c7c4..e39b71802 100644 --- a/sources/ui/imagetransparentcolordialog.cpp +++ b/sources/ui/imagetransparentcolordialog.cpp @@ -65,7 +65,14 @@ ClickableImageLabel::ClickableImageLabel(const QImage &sourceImage, QWidget *par */ void ClickableImageLabel::mousePressEvent(QMouseEvent *event) { - if (event->button() != Qt::LeftButton || pixmap().isNull()) + // QLabel::pixmap() returns a pointer in Qt5 and a value in Qt6. +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + const QPixmap label_pixmap = pixmap() ? *pixmap() : QPixmap(); +#else + const QPixmap label_pixmap = pixmap(); +#endif + + if (event->button() != Qt::LeftButton || label_pixmap.isNull()) return; // The label may be larger than its pixmap (layout stretching); the @@ -73,9 +80,9 @@ void ClickableImageLabel::mousePressEvent(QMouseEvent *event) // so the click has to be re-based against the pixmap's own rect // within the label, not the label's own top-left. const QRect pixmapRect( - (width() - pixmap().width()) / 2, - (height() - pixmap().height()) / 2, - pixmap().width(), pixmap().height()); + (width() - label_pixmap.width()) / 2, + (height() - label_pixmap.height()) / 2, + label_pixmap.width(), label_pixmap.height()); if (!pixmapRect.contains(event->pos())) return; From c33f250910a101487039f701df4e44997a66f172 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 9 Sep 2026 10:04:25 +1200 Subject: [PATCH 52/95] Count master contacts in one place, and count contacts not elements MasterElement::isFull() decided whether a coil had room left with connected_elements.size() >= max_slaves which counts linked *elements*. A slave stands for as many contacts as its "number" kind information declares, so a 4 pole contact consumed a single contact from the coil's budget instead of four. 36 elements in the standard collection declare a number between 2 and 4, so this is reachable, not theoretical. Add ContactUsage, a header-only tally holding the two rules that are easy to get wrong: - a slave counts once per contact it declares, not once per element - a changeover is counted once, as sw, and never as one NO plus one NC. CrossRefItem::NOElements() and NCElements() both return changeovers, so a count built by adding those two lists together reports one changeover as two contacts. The upcoming per-type displays (the used count in the element's General tab, and the per-type budget on the cross reference) need exactly this count, so it lives in one place rather than being written out three times, and isFull() now reads it too. The header carries no graphics dependency, so the counting rules are unit tested on their own in tests/qttest/tst_contactusage.cpp, following the same pattern as diagramsortkeys.h. Verified: all 9 unit tests pass, and both rules were mutation checked (counting elements instead of contacts fails 2 tests, counting a changeover as both NO and NC fails 3). The 23 example projects still load and export without crash or hang, and qet-lint reports no regressions against its baseline. Co-Authored-By: Claude Opus 5 --- sources/contactusage.h | 85 +++++++++++++++ sources/qetgraphicsitem/masterelement.cpp | 39 ++++++- sources/qetgraphicsitem/masterelement.h | 2 + tests/qttest/CMakeLists.txt | 6 ++ tests/qttest/tst_contactusage.cpp | 123 ++++++++++++++++++++++ 5 files changed, 253 insertions(+), 2 deletions(-) create mode 100644 sources/contactusage.h create mode 100644 tests/qttest/tst_contactusage.cpp diff --git a/sources/contactusage.h b/sources/contactusage.h new file mode 100644 index 000000000..5b29176ca --- /dev/null +++ b/sources/contactusage.h @@ -0,0 +1,85 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#ifndef CONTACTUSAGE_H +#define CONTACTUSAGE_H + +#include + +/** + @brief The ContactUsage struct + How many slave contacts a master element currently uses, broken down + by contact type. + + Header-only and free of any graphics dependency so that the counting + rules can be unit tested on their own. MasterElement::contactUsage() + is the thin wrapper that feeds it the linked elements. + + Two rules are easy to get wrong, and both live here so that every + caller gets them right: + - a slave stands for as many contacts as its "number" kind + information says, so a 4 pole contact counts as 4, not as 1 + - a changeover contact is counted once, as sw. CrossRefItem's + NOElements() and NCElements() both return it, so adding those two + lists together would count it twice. +*/ +struct ContactUsage +{ + /** + Contact types a slave can declare. Mirrors + ElementData::SlaveState, which is not used directly so that this + header stays free of the element data dependencies and can be + unit tested on its own. MasterElement::contactUsage() maps + between the two. + */ + enum Type + { + NO, ///< Normally open + NC, ///< Normally closed + SW, ///< Changeover + Other ///< Neither of the above + }; + + int no = 0; ///< Normally open + int nc = 0; ///< Normally closed + int sw = 0; ///< Changeover + int other = 0; ///< Neither of the above + + int total() const { return no + nc + sw + other; } + + /** + Add one slave element to the tally. + @param type the contact type the slave declares + @param contacts how many contacts it stands for. Values below 1 + are treated as 1: an element which declares no + contact count is still one contact. + */ + void addSlave(Type type, int contacts) + { + const int n = std::max(1, contacts); + + switch (type) + { + case NO: no += n; break; + case NC: nc += n; break; + case SW: sw += n; break; + case Other: other += n; break; + } + } +}; + +#endif // CONTACTUSAGE_H diff --git a/sources/qetgraphicsitem/masterelement.cpp b/sources/qetgraphicsitem/masterelement.cpp index 14659bb72..1ccebfd3a 100644 --- a/sources/qetgraphicsitem/masterelement.cpp +++ b/sources/qetgraphicsitem/masterelement.cpp @@ -227,6 +227,41 @@ void MasterElement::aboutDeleteXref() } } +/** + * @brief MasterElement::contactUsage + * Count the slave contacts currently linked to this master, by type. + * This is the single place where that count is worked out: the cross ref + * item, the properties dialog and the link widgets all read it from here, + * so they cannot disagree with each other. + * @return the per type usage + */ +ContactUsage MasterElement::contactUsage() const +{ + ContactUsage usage; + + for (Element *elmt : connected_elements) + { + if (!elmt) { + continue; + } + + const ElementData &data = elmt->elementData(); + + ContactUsage::Type type = ContactUsage::Other; + switch (data.m_slave_state) + { + case ElementData::NO: type = ContactUsage::NO; break; + case ElementData::NC: type = ContactUsage::NC; break; + case ElementData::SW: type = ContactUsage::SW; break; + case ElementData::Other: type = ContactUsage::Other; break; + } + + usage.addSlave(type, data.m_contact_count); + } + + return usage; +} + /** * @brief MasterElement::isFull * @return true if the master has reached its maximum number of slaves @@ -247,8 +282,8 @@ bool MasterElement::isFull() const return false; } - // Return true if current connected elements reached or exceeded the limit - return connected_elements.size() >= max_slaves; + // Return true if the contacts already used reached or exceeded the limit + return contactUsage().total() >= max_slaves; } /** diff --git a/sources/qetgraphicsitem/masterelement.h b/sources/qetgraphicsitem/masterelement.h index 5fb1fb029..21aa20f40 100644 --- a/sources/qetgraphicsitem/masterelement.h +++ b/sources/qetgraphicsitem/masterelement.h @@ -19,6 +19,7 @@ #define MASTERELEMENT_H #include "element.h" +#include "../contactusage.h" #include #include @@ -47,6 +48,7 @@ class MasterElement : public Element void initLink (QETProject *project) override; QRectF XrefBoundingRect() const; + ContactUsage contactUsage() const; bool isFull() const; // Check Slave-Limit protected: diff --git a/tests/qttest/CMakeLists.txt b/tests/qttest/CMakeLists.txt index 4ef9c62d8..94d082282 100644 --- a/tests/qttest/CMakeLists.txt +++ b/tests/qttest/CMakeLists.txt @@ -85,3 +85,9 @@ add_test(NAME tst_diagramsortkeys COMMAND tst_diagramsortkeys) target_include_directories(tst_diagramsortkeys PRIVATE ${QET_DIR}/sources) target_link_libraries(tst_diagramsortkeys PRIVATE Qt::Test) +# contactusage.h is a header-only helper holding the contact counting +# rules, so this test builds independently of the rest of the QET sources. +add_executable(tst_contactusage tst_contactusage.cpp) +add_test(NAME tst_contactusage COMMAND tst_contactusage) +target_include_directories(tst_contactusage PRIVATE ${QET_DIR}/sources) +target_link_libraries(tst_contactusage PRIVATE Qt::Test) diff --git a/tests/qttest/tst_contactusage.cpp b/tests/qttest/tst_contactusage.cpp new file mode 100644 index 000000000..c587b3fbb --- /dev/null +++ b/tests/qttest/tst_contactusage.cpp @@ -0,0 +1,123 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#include + +#include "contactusage.h" + +class tst_contactusage : public QObject +{ + Q_OBJECT + +private slots: + // An empty master uses nothing. + void emptyUsesNothing() + { + ContactUsage usage; + + QCOMPARE(usage.no, 0); + QCOMPARE(usage.nc, 0); + QCOMPARE(usage.sw, 0); + QCOMPARE(usage.other, 0); + QCOMPARE(usage.total(), 0); + } + + // Each type accumulates into its own field only. + void countsEachTypeSeparately() + { + ContactUsage usage; + usage.addSlave(ContactUsage::NO, 1); + usage.addSlave(ContactUsage::NO, 1); + usage.addSlave(ContactUsage::NC, 1); + usage.addSlave(ContactUsage::SW, 1); + usage.addSlave(ContactUsage::Other, 1); + + QCOMPARE(usage.no, 2); + QCOMPARE(usage.nc, 1); + QCOMPARE(usage.sw, 1); + QCOMPARE(usage.other, 1); + QCOMPARE(usage.total(), 5); + } + + // A slave standing for several contacts counts once per contact. + // Counting elements rather than contacts made a 4 pole contact + // consume a single contact from the master's budget. + void countsContactsNotElements() + { + ContactUsage usage; + usage.addSlave(ContactUsage::NO, 4); + + QCOMPARE(usage.no, 4); + QCOMPARE(usage.total(), 4); + } + + // A changeover is one contact of its own kind, never one NO plus + // one NC. CrossRefItem::NOElements() and NCElements() both return + // changeovers, so a count built by adding those two lists would + // report a single changeover as two contacts. + void changeoverIsCountedOnce() + { + ContactUsage usage; + usage.addSlave(ContactUsage::SW, 1); + + QCOMPARE(usage.sw, 1); + QCOMPARE(usage.no, 0); + QCOMPARE(usage.nc, 0); + QCOMPARE(usage.total(), 1); + } + + // An element which declares no contact count, or a nonsensical one, + // is still a contact. + void missingContactCountIsOneContact_data() + { + QTest::addColumn("declared"); + + QTest::newRow("zero") << 0; + QTest::newRow("negative") << -1; + } + + void missingContactCountIsOneContact() + { + QFETCH(int, declared); + + ContactUsage usage; + usage.addSlave(ContactUsage::NO, declared); + + QCOMPARE(usage.no, 1); + QCOMPARE(usage.total(), 1); + } + + // The mix a coil would actually carry: two single NO, one 4 pole NO, + // one NC and one changeover. + void tallysARealisticMix() + { + ContactUsage usage; + usage.addSlave(ContactUsage::NO, 1); + usage.addSlave(ContactUsage::NO, 1); + usage.addSlave(ContactUsage::NO, 4); + usage.addSlave(ContactUsage::NC, 1); + usage.addSlave(ContactUsage::SW, 1); + + QCOMPARE(usage.no, 6); + QCOMPARE(usage.nc, 1); + QCOMPARE(usage.sw, 1); + QCOMPARE(usage.total(), 8); + } +}; + +QTEST_APPLESS_MAIN(tst_contactusage) +#include "tst_contactusage.moc" From c39c7414cfa172cb493a4892ced407ee14044ddb Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 9 Sep 2026 10:36:25 +1200 Subject: [PATCH 53/95] Show the NO/NC/SW contact breakdown in a master's General tab Requested in #819: after drawing a schematic you need to know how many NO, NC and changeover contacts a coil ended up using, so you can pick an auxiliary block that satisfies it. Until now the General tab reported only a single total, and counting the contacts by type meant counting rows on the cross reference by hand. Three changes to that block: - the used count now counts contacts rather than linked elements. The label already said "contacts" while the value was linkedElements().count(), so a slave standing for several contacts was under-reported. It reads MasterElement::contactUsage(), the same count isFull() uses. - a breakdown line is added below it, printed only when the master actually has contacts to break down. - a declared limit of -1 means "no limit set" rather than a real limit, so it is printed as such instead of showing "-1", which reads as a bad value. Co-Authored-By: Claude Opus 5 --- sources/ui/elementpropertieswidget.cpp | 32 +++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/sources/ui/elementpropertieswidget.cpp b/sources/ui/elementpropertieswidget.cpp index 815f954e7..2dc75cd51 100644 --- a/sources/ui/elementpropertieswidget.cpp +++ b/sources/ui/elementpropertieswidget.cpp @@ -23,6 +23,7 @@ #include "../qetgraphicsitem/dynamicelementtextitem.h" #include "../qetgraphicsitem/element.h" #include "../qetgraphicsitem/elementtextitemgroup.h" +#include "../qetgraphicsitem/masterelement.h" #include "../qeticons.h" #include "dynamicelementtextitemeditor.h" #include "elementinfowidget.h" @@ -380,9 +381,34 @@ QWidget *ElementPropertiesWidget::generalWidget() description_string += QString(tr("Rotation : %1°\n")).arg(m_element.data()->rotation()); description_string += QString(tr("Dimensions : %1*%2\n")).arg(m_element -> size().width()).arg(m_element -> size().height()); description_string += QString(tr("Bornes : %1\n")).arg(m_element -> terminals().count()); - if (m_element->linkType() == Element::Master){ - description_string += QString(tr("Nombre maximum de contacts esclaves définis : %1\n")).arg(m_element -> elementData().m_max_slaves); - description_string += QString(tr("Nombre de contacts esclaves utilisés : %1\n")).arg(m_element ->linkedElements().count()); + if (m_element->linkType() == Element::Master) + { + //The declared limit is optional: -1 means the element sets no + //limit at all, which is worth saying rather than printing "-1". + const int max_slaves = m_element->elementData().m_max_slaves; + description_string += max_slaves == -1 + ? QString(tr("Nombre maximum de contacts esclaves définis : non défini\n")) + : QString(tr("Nombre maximum de contacts esclaves définis : %1\n")).arg(max_slaves); + + //Counted in contacts rather than in linked elements, so that a + //slave standing for several contacts is reported as the number + //of contacts it actually uses. + const ContactUsage usage = + static_cast(m_element.data())->contactUsage(); + + description_string += QString(tr("Nombre de contacts esclaves utilisés : %1\n")).arg(usage.total()); + + //The breakdown is what tells you which auxiliary block would + //satisfy this coil, so it is only worth printing once there is + //something to break down. + if (usage.total() > 0) + { + description_string += QString(tr(" NO : %1, NC : %2, inverseurs : %3, autres : %4\n")) + .arg(usage.no) + .arg(usage.nc) + .arg(usage.sw) + .arg(usage.other); + } } description_string += QString(tr("Emplacement : %1\n")).arg(m_element.data()->location().toString()); From 6f2c66afefcd71707f0030f58303aa03a935bdeb Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 9 Sep 2026 10:49:16 +1200 Subject: [PATCH 54/95] Show used against declared capacity where a master declares contact groups Second half of #819: where a coil declares what contacts it provides, the General tab now reports each type as used against declared rather than as a bare count. NO : 3/4, NC : 1/2, inverseurs : 0/1, autres : 0/0 MasterElement::contactCapacity() sums contactCount over the element's SlaveContactGroup list, per type, reusing the same ContactUsage tally the used count is built on. The mapping from ElementData::SlaveState onto the tally's own type is factored into one helper so the used count and the declared capacity cannot classify a contact differently. Falls back to the plain count from the previous commit when an element declares no groups, which is every element in the standard collection today -- nothing in the corpus declares slaveContactGroups, so this changes no existing display. A type used beyond what is declared reads as e.g. "1/0". That is deliberate: it says this contact does not fit the part. Display only. Whether a declared capacity should also feed MasterElement::isFull() is the open question in #819 and is not touched here. Verified end to end against a purpose-built fixture, since no existing element exercises this path: a coil declaring two NO groups of two, one NC group of two and one changeover group of one parses and reports NO=4 NC=2 SW=1 other=0 total=7, matching the declaration exactly. tst_contactusage gains a case covering capacity summed across groups (10 cases, all passing). Co-Authored-By: Claude Opus 5 --- sources/qetgraphicsitem/masterelement.cpp | 54 ++++++++++++++++++----- sources/qetgraphicsitem/masterelement.h | 1 + sources/ui/elementpropertieswidget.cpp | 22 +++++++-- tests/qttest/tst_contactusage.cpp | 14 ++++++ 4 files changed, 77 insertions(+), 14 deletions(-) diff --git a/sources/qetgraphicsitem/masterelement.cpp b/sources/qetgraphicsitem/masterelement.cpp index 1ccebfd3a..b9c829a0f 100644 --- a/sources/qetgraphicsitem/masterelement.cpp +++ b/sources/qetgraphicsitem/masterelement.cpp @@ -235,6 +235,28 @@ void MasterElement::aboutDeleteXref() * so they cannot disagree with each other. * @return the per type usage */ +namespace { + + /** + Map the element data's contact type onto the tally's own, so that + the used count and the declared capacity cannot classify the same + contact type differently. + */ + ContactUsage::Type contactType(ElementData::SlaveState state) + { + switch (state) + { + case ElementData::NO: return ContactUsage::NO; + case ElementData::NC: return ContactUsage::NC; + case ElementData::SW: return ContactUsage::SW; + case ElementData::Other: break; + } + + return ContactUsage::Other; + } + +} + ContactUsage MasterElement::contactUsage() const { ContactUsage usage; @@ -246,22 +268,32 @@ ContactUsage MasterElement::contactUsage() const } const ElementData &data = elmt->elementData(); - - ContactUsage::Type type = ContactUsage::Other; - switch (data.m_slave_state) - { - case ElementData::NO: type = ContactUsage::NO; break; - case ElementData::NC: type = ContactUsage::NC; break; - case ElementData::SW: type = ContactUsage::SW; break; - case ElementData::Other: type = ContactUsage::Other; break; - } - - usage.addSlave(type, data.m_contact_count); + usage.addSlave(contactType(data.m_slave_state), data.m_contact_count); } return usage; } +/** + * @brief MasterElement::contactCapacity + * The contacts this master declares it provides, by type, summed over its + * contact groups. A group stands for contactCount contacts of its type. + * Returns an empty tally when the element declares no groups, which is the + * case for every element in the standard collection today -- callers use + * that to decide whether a capacity is worth showing at all. + * @return the per type capacity + */ +ContactUsage MasterElement::contactCapacity() const +{ + ContactUsage capacity; + + for (const auto &group : m_data.m_slave_contact_groups) { + capacity.addSlave(contactType(group.type), group.contactCount); + } + + return capacity; +} + /** * @brief MasterElement::isFull * @return true if the master has reached its maximum number of slaves diff --git a/sources/qetgraphicsitem/masterelement.h b/sources/qetgraphicsitem/masterelement.h index 21aa20f40..2892e68e1 100644 --- a/sources/qetgraphicsitem/masterelement.h +++ b/sources/qetgraphicsitem/masterelement.h @@ -49,6 +49,7 @@ class MasterElement : public Element QRectF XrefBoundingRect() const; ContactUsage contactUsage() const; + ContactUsage contactCapacity() const; bool isFull() const; // Check Slave-Limit protected: diff --git a/sources/ui/elementpropertieswidget.cpp b/sources/ui/elementpropertieswidget.cpp index 2dc75cd51..db6603663 100644 --- a/sources/ui/elementpropertieswidget.cpp +++ b/sources/ui/elementpropertieswidget.cpp @@ -393,16 +393,32 @@ QWidget *ElementPropertiesWidget::generalWidget() //Counted in contacts rather than in linked elements, so that a //slave standing for several contacts is reported as the number //of contacts it actually uses. - const ContactUsage usage = - static_cast(m_element.data())->contactUsage(); + const MasterElement *master = + static_cast(m_element.data()); + const ContactUsage usage = master->contactUsage(); description_string += QString(tr("Nombre de contacts esclaves utilisés : %1\n")).arg(usage.total()); //The breakdown is what tells you which auxiliary block would //satisfy this coil, so it is only worth printing once there is //something to break down. - if (usage.total() > 0) + const ContactUsage capacity = master->contactCapacity(); + + if (capacity.total() > 0) { + //The element declares contact groups, so it can say not + //only what has been used but what it has to offer. A type + //used beyond what is declared shows as e.g. "1/0", which + //is the point: it says this contact does not fit the part. + description_string += QString(tr(" NO : %1/%2, NC : %3/%4, inverseurs : %5/%6, autres : %7/%8\n")) + .arg(usage.no).arg(capacity.no) + .arg(usage.nc).arg(capacity.nc) + .arg(usage.sw).arg(capacity.sw) + .arg(usage.other).arg(capacity.other); + } + else if (usage.total() > 0) + { + //No declared groups, so a plain count of what is in use. description_string += QString(tr(" NO : %1, NC : %2, inverseurs : %3, autres : %4\n")) .arg(usage.no) .arg(usage.nc) diff --git a/tests/qttest/tst_contactusage.cpp b/tests/qttest/tst_contactusage.cpp index c587b3fbb..deb756933 100644 --- a/tests/qttest/tst_contactusage.cpp +++ b/tests/qttest/tst_contactusage.cpp @@ -101,6 +101,20 @@ private slots: QCOMPARE(usage.total(), 1); } + // A declared capacity is summed across groups, so two NO groups of two + // contacts each declare four NO contacts, not two groups. + void capacitySumsAcrossGroups() + { + ContactUsage capacity; + capacity.addSlave(ContactUsage::NO, 2); + capacity.addSlave(ContactUsage::NO, 2); + capacity.addSlave(ContactUsage::NC, 1); + + QCOMPARE(capacity.no, 4); + QCOMPARE(capacity.nc, 1); + QCOMPARE(capacity.total(), 5); + } + // The mix a coil would actually carry: two single NO, one 4 pole NO, // one NC and one changeover. void tallysARealisticMix() From 799ff5573fa5f74037c6d869eec9718cb120a1fa Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 9 Sep 2026 11:45:36 +1200 Subject: [PATCH 55/95] Revert the isFull() change: max_slaves counts slots, not contacts The earlier commit changed MasterElement::isFull() to compare the contacts in use against max_slaves. That was wrong, and this restores the original comparison against the number of linked elements. max_slaves is a number of slots, not of contacts: - it sizes the contact group table in the element editor, one row per slot (ElementPropertiesEditorWidget::populateSlaveGroupsTable) - a group must match the slave's own contact count before it can be chosen, so a 4 pole slave needs a group declaring 4 and occupies that single group (ContactGroupSelectionDialog) - each slave stores exactly one group index (Element::setGroupIndexForElement) So a coil declaring 4 slots accepts 4 slaves, whatever their pole count. Counting contacts made one 4 pole slave fill a 4 slot coil on its own and refuse three further links that should have been allowed. ContactUsage stays, and its per-type tally is still what the General tab needs: how many contacts an auxiliary block must provide is a different question from how many slots are occupied, and only the former wants the pole multiplier. The header now says so. Co-Authored-By: Claude Opus 5 --- sources/contactusage.h | 6 ++++++ sources/qetgraphicsitem/masterelement.cpp | 7 +++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/sources/contactusage.h b/sources/contactusage.h index 5b29176ca..406a6223a 100644 --- a/sources/contactusage.h +++ b/sources/contactusage.h @@ -29,6 +29,12 @@ rules can be unit tested on their own. MasterElement::contactUsage() is the thin wrapper that feeds it the linked elements. + This counts contacts, which is what tells you how many contacts an + auxiliary block must provide. It is deliberately not the count that + MasterElement::isFull() uses: a master's max_slaves is a number of + slots, and a slave fills exactly one slot however many contacts it + carries. + Two rules are easy to get wrong, and both live here so that every caller gets them right: - a slave stands for as many contacts as its "number" kind diff --git a/sources/qetgraphicsitem/masterelement.cpp b/sources/qetgraphicsitem/masterelement.cpp index 1ccebfd3a..599b8c90d 100644 --- a/sources/qetgraphicsitem/masterelement.cpp +++ b/sources/qetgraphicsitem/masterelement.cpp @@ -282,8 +282,11 @@ bool MasterElement::isFull() const return false; } - // Return true if the contacts already used reached or exceeded the limit - return contactUsage().total() >= max_slaves; + // max_slaves is a number of slots, not of contacts: it sizes the + // element's contact group table, and a slave occupies exactly one + // group however many contacts that group stands for. So the slots + // in use are the linked elements, not the contacts they carry. + return connected_elements.size() >= max_slaves; } /** From 73e9473db4a405596c42d3c2b58fdfcf36e90375 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 9 Sep 2026 11:46:34 +1200 Subject: [PATCH 56/95] Keep the slave total in slots, and label the breakdown as contacts Two units were being stacked in the same block. The line above reports max_slaves, which is a number of slots, so reporting the line below in contacts made a coil with one 4 pole slave read "maximum 4 / used 4" while three slots were still free. The total goes back to counting linked elements, matching the unit of the line above it and restoring the original behaviour of that line. The per-type breakdown keeps the pole multiplier, because that is the question it answers -- how many contacts an auxiliary block must provide -- and is now prefixed "Contacts :" so the two units are not mistaken for each other. Co-Authored-By: Claude Opus 5 --- sources/ui/elementpropertieswidget.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sources/ui/elementpropertieswidget.cpp b/sources/ui/elementpropertieswidget.cpp index 2dc75cd51..9091dadbb 100644 --- a/sources/ui/elementpropertieswidget.cpp +++ b/sources/ui/elementpropertieswidget.cpp @@ -390,20 +390,20 @@ QWidget *ElementPropertiesWidget::generalWidget() ? QString(tr("Nombre maximum de contacts esclaves définis : non défini\n")) : QString(tr("Nombre maximum de contacts esclaves définis : %1\n")).arg(max_slaves); - //Counted in contacts rather than in linked elements, so that a - //slave standing for several contacts is reported as the number - //of contacts it actually uses. + //Left as a count of linked elements: the line above is a number + //of slots, and a slave fills one slot however many contacts it + //carries, so the two stay in the same unit. + description_string += QString(tr("Nombre de contacts esclaves utilisés : %1\n")).arg(m_element->linkedElements().count()); + const ContactUsage usage = static_cast(m_element.data())->contactUsage(); - description_string += QString(tr("Nombre de contacts esclaves utilisés : %1\n")).arg(usage.total()); - //The breakdown is what tells you which auxiliary block would //satisfy this coil, so it is only worth printing once there is //something to break down. if (usage.total() > 0) { - description_string += QString(tr(" NO : %1, NC : %2, inverseurs : %3, autres : %4\n")) + description_string += QString(tr(" Contacts : NO : %1, NC : %2, inverseurs : %3, autres : %4\n")) .arg(usage.no) .arg(usage.nc) .arg(usage.sw) From a2441a6f81d4588351868964f765d44ccfdec951 Mon Sep 17 00:00:00 2001 From: Jeff Patterson Date: Wed, 9 Sep 2026 05:16:50 -0500 Subject: [PATCH 57/95] Set a bundle identifier so macOS file dialogs work CMakeLists.txt marks the macOS target as MACOSX_BUNDLE but never sets MACOSX_BUNDLE_GUI_IDENTIFIER, so CMake's default Info.plist template substitutes an empty string for CFBundleIdentifier. An .app with an empty identifier is never registered by LaunchServices (`lsappinfo info` reports bundleID="" and bundle path=[NULL]). AppKit runs the open/save panel in an XPC service keyed on the client's bundle identifier: the service is spawned on each request but presents no window, so QFileDialog::getOpenFileName() and getSaveFileName() return an empty string without a panel ever appearing. In QET this means File > Open and File > Save as silently do nothing -- openProject() receives an empty path and returns at its `if (filepath.isEmpty())` guard. Every macOS CMake build has been affected since the target became a bundle. Fill in the identifier along with the other bundle metadata CMake's template expects. org.qelectrotech.QElectroTech is the identifier Qt already derives from setOrganizationDomain("qelectrotech.org") and setApplicationName("QElectroTech") for the app's own preferences file, so the bundle now agrees with what the app writes at runtime. Verified on macOS 27 with Qt 6.11: before the change File > Open and File > Save as present nothing; after it both panels open normally. No code signing step is needed -- the linker's ad-hoc signature still reports the executable name as its identifier, and the panels work regardless once the plist is correct. --- CMakeLists.txt | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 595580b9a..325c3fde8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -163,7 +163,22 @@ else() endif() if(APPLE) - set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE TRUE) + # CFBundleIdentifier must not be empty. CMake's default Info.plist + # template fills it from MACOSX_BUNDLE_GUI_IDENTIFIER; with that unset + # the bundle ships an empty identifier, LaunchServices never registers + # the .app, and AppKit's open/save panel service (which is keyed on the + # client's bundle id) silently presents nothing -- every + # QFileDialog::getOpenFileName()/getSaveFileName() call returns an empty + # string without a panel ever appearing, so File > Open and File > Save + # as do nothing at all. + set_target_properties(${PROJECT_NAME} PROPERTIES + MACOSX_BUNDLE TRUE + MACOSX_BUNDLE_GUI_IDENTIFIER "org.qelectrotech.QElectroTech" + MACOSX_BUNDLE_BUNDLE_NAME "QElectroTech" + MACOSX_BUNDLE_BUNDLE_VERSION "${PROJECT_VERSION}" + MACOSX_BUNDLE_SHORT_VERSION_STRING "${PROJECT_VERSION}" + MACOSX_BUNDLE_COPYRIGHT "Copyright 2006-2026 The QElectroTech Team" + ) endif() # The default build only compiles the tracked .ts files to .qm (lrelease). From 8295083f05951d3278539bf2ae4ecb7c0a6ff1b0 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Wed, 9 Sep 2026 15:54:28 +0200 Subject: [PATCH 58/95] misc: align macOS bundle identifier with app's settings domain CFBundleIdentifier was "org.qelectrotech", but Qt derives "org.qelectrotech.QElectroTech" from setOrganizationDomain() and setApplicationName() for the app's own preferences file (~/Library/Preferences/org.qelectrotech.QElectroTech.plist). Align the two so the shipped bundle and the CMake target (see CMakeLists.txt MACOSX_BUNDLE_GUI_IDENTIFIER) use the same identifier regardless of build path. Note: this changes the bundle's LaunchServices identity, so users may need to redo "Open With QElectroTech" file associations once after updating. --- misc/Info.plist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/misc/Info.plist b/misc/Info.plist index e26e02555..16da6501c 100644 --- a/misc/Info.plist +++ b/misc/Info.plist @@ -42,7 +42,7 @@ CFBundleIconFile qelectrotech CFBundleIdentifier - org.qelectrotech + org.qelectrotech.QElectroTech CFBundleInfoDictionaryVersion 6.0 CFBundlePackageType From 957bbe5edbecade2f71e70888e1107f35f3928b0 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Wed, 9 Sep 2026 16:02:02 +0200 Subject: [PATCH 59/95] macOS: drop obsolete lang1/ copy step lang1/ was a leftover from the pre-Qt6 translation pipeline. Qt6/CMake now produces all .qm files directly into lang/, which is already copied above, making this step dead code. --- misc/MacQetDeploy_arm64_cmake.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index 4e7648887..a527408a6 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -175,7 +175,6 @@ QET_LANG_DIR="${current_dir}/lang/" QET_EXAMPLES_DIR="${current_dir}/examples/" QET_FONTS_DIR="${current_dir}/fonts/" QET_LICENSES_DIR="${current_dir}/licenses/" -LANG_DIR="${current_dir}/lang1/" if [ -d "${QET_ELMT_DIR}" ]; then cp -R ${QET_ELMT_DIR} $BUNDLE/Contents/Resources/elements @@ -187,9 +186,6 @@ if [ -d "${QET_LANG_DIR}" ]; then mkdir $BUNDLE/Contents/Resources/lang cp ${current_dir}/lang/*.qm $BUNDLE/Contents/Resources/lang fi -if [ -d "${LANG_DIR}" ]; then - cp ${current_dir}/lang1/*.qm $BUNDLE/Contents/Resources/lang -fi if [ -d "${QET_EXAMPLES_DIR}" ]; then mkdir $BUNDLE/Contents/Resources/examples cp ${current_dir}/examples/*.qet $BUNDLE/Contents/Resources/examples From ffd829bb69328c9e7f600dc1bac6e5bdc778f520 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Thu, 10 Sep 2026 11:54:52 +1200 Subject: [PATCH 60/95] Make the slave limit advisory rather than a refusal max_slaves records how many contacts a part is expected to carry. It was enforced as a rule the drawing had to obey, which obstructs the way both @scorpio810 and @IBSYSLevi described working in #819: draw the schematic first, choose the physical hardware afterwards. A limit that refuses the link forces the hardware decision up front, which is exactly what they said gets in the way. Two changes, both in the UI rather than in isFull(), which stays the query it always was: - MasterPropertiesWidget::on_link_button_clicked() now says the limit is reached and asks whether to link anyway, defaulting to yes, instead of refusing outright. - LinkSingleElementWidget no longer removes a full master from the candidate list. That was the worse half: a master at its limit simply was not there, indistinguishable from one that does not exist, with nothing to say why. It now stays selectable and the user decides. PLC masters are deliberately left alone. Their limit is the number of declared IO slots, which is structural rather than advisory -- a link past it would have no IO index to map to -- and PlcLinkWidget already tells the user when it hides one, via m_hidden_masters_label. Only coils that opt into a limit are affected: max_slaves defaults to -1, and no project in examples/ sets it. Co-Authored-By: Claude Opus 5 --- sources/ui/linksingleelementwidget.cpp | 12 ++++++------ sources/ui/masterpropertieswidget.cpp | 21 +++++++++++++++------ 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/sources/ui/linksingleelementwidget.cpp b/sources/ui/linksingleelementwidget.cpp index 7cc04559d..e2c3c8b38 100644 --- a/sources/ui/linksingleelementwidget.cpp +++ b/sources/ui/linksingleelementwidget.cpp @@ -17,7 +17,6 @@ */ #include "linksingleelementwidget.h" #include "contactgroupselectiondialog.h" -#include "../qetgraphicsitem/masterelement.h" #include "../qetgraphicsitem/conductor.h" #include "../diagram.h" #include "../diagramposition.h" @@ -418,11 +417,12 @@ QVector > LinkSingleElementWidget::availableElements() continue; } - // If the master is full, we'll remove it from the list! - MasterElement *master = static_cast(elmt); - if (master->isFull()) { - elmt_vector.removeAt(i); - } + // A master at its declared limit stays in the list. Removing + // it made a full master indistinguishable from one that does + // not exist: the candidate simply was not there, with nothing + // to say why. The limit is advisory -- see the prompt in + // MasterPropertiesWidget::on_link_button_clicked() -- so the + // user decides, rather than the list deciding for them. } } return elmt_vector; diff --git a/sources/ui/masterpropertieswidget.cpp b/sources/ui/masterpropertieswidget.cpp index bd5500e09..339938d06 100644 --- a/sources/ui/masterpropertieswidget.cpp +++ b/sources/ui/masterpropertieswidget.cpp @@ -307,15 +307,24 @@ void MasterPropertiesWidget::on_link_button_clicked() int max_slaves = max_slaves_variant.toInt(); int current_slaves = ui->m_link_tree_widget->topLevelItemCount(); - // If a limit is set and reached + // If a limit is set and reached, say so but let the user decide. + // The limit records how many contacts the part is expected to + // carry; it is not a rule the drawing has to obey, and refusing + // the link obstructs drawing a schematic before the hardware has + // been chosen. if (max_slaves != -1 && current_slaves >= max_slaves) { - // Show a message box with the actual window as parent to ensure it's on top - QMessageBox::warning(this->window(), - tr("Nombre maximal d'esclaves atteint."), - tr("Cet élément maître ne peut plus accepter aucun nouveau contact esclave, la limite fixée a été atteinte (Limite: %1).").arg(max_slaves)); - return; + const auto answer = QMessageBox::warning( + this->window(), + tr("Nombre maximal d'esclaves atteint."), + tr("La limite fixée pour cet élément maître est atteinte (Limite: %1).\n\n" + "Voulez-vous tout de même lier ce contact esclave ?").arg(max_slaves), + QMessageBox::Yes | QMessageBox::No, + QMessageBox::Yes); + if (answer != QMessageBox::Yes) { + return; + } } } From a1c0907811fcebcd5a5a982e9083158b8ede925e Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Thu, 10 Sep 2026 02:30:53 +0200 Subject: [PATCH 61/95] Set QT_VERSION_MAJOR to 6 https://github.com/qelectrotech/qelectrotech-source-mirror/pull/824#issuecomment-5610090520 --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 325c3fde8..470b2fcff 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -36,7 +36,7 @@ set(QET_DIR ${PROJECT_SOURCE_DIR}) # includes below, so every subdirectory and every FetchContent dependency # sees a consistent, already-defined value. if(NOT DEFINED QT_VERSION_MAJOR) - set(QT_VERSION_MAJOR 5) + set(QT_VERSION_MAJOR 6) endif() # Some third-party CMake projects we pull in via FetchContent (e.g. From c830101ba69cb1d208f591f46ef592e96895eec9 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Thu, 10 Sep 2026 02:33:31 +0200 Subject: [PATCH 62/95] Update CMakeLists.txt set version to 0.200.1 --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 470b2fcff..52d8fe189 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,7 +19,7 @@ include(cmake/hoto_update_cmake_message.cmake) cmake_minimum_required(VERSION 3.5...4.2) project(qelectrotech - VERSION 0.100.1 + VERSION 0.200.1 DESCRIPTION "QET is a CAD/CAE editor focusing on schematics drawing features." HOMEPAGE_URL "https://qelectrotech.org/" LANGUAGES C CXX) From 6c68c461b14eebd84ffd19c2774349bb11cc3f3b Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Thu, 10 Sep 2026 05:24:31 +0200 Subject: [PATCH 63/95] Set Doxyfile version to 0.200.1 --- Doxyfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doxyfile b/Doxyfile index 86052291d..2932b3a13 100644 --- a/Doxyfile +++ b/Doxyfile @@ -48,7 +48,7 @@ PROJECT_NAME = QElectroTech # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = " 0.100.0-dev" +PROJECT_NUMBER = " 0.200.1-dev" # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a From 96374207562579f8980070587c4027c8c03783b7 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Thu, 10 Sep 2026 05:27:57 +0200 Subject: [PATCH 64/95] Update Links to Doygen documentation and qch file --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 310f8abf7..7a398c5ea 100644 --- a/README.md +++ b/README.md @@ -48,8 +48,8 @@ Here are the technical choices made for the software development: * Coding language: [C++](https://en.wikipedia.org/wiki/C%2B%2B) * GUI translations: [Qt Linguist](http://doc.qt.io/qt-5/qtlinguist-index.html) * Version control: [GIT](https://github.com/qelectrotech/qelectrotech-source-mirror.git) -* Doxygen documentation :[Doxygen](https://qelectrotech.github.io/qelectrotech-source-mirror/) -* QtCreator qch doxygen :[QElectroTech.qch](https://github.com/qelectrotech/qelectrotech-source-mirror/blob/master/doc/QElectroTech.qch) +* Doxygen documentation :[Doxygen](https://download.qelectrotech.org/qet/doxygen/html/) +* QtCreator qch doxygen :[QElectroTech.qch](https://download.qelectrotech.org/qet/doxygen/QElectroTech.qch) * File format for projects, elements and titleblocks: [XML](http://www.w3schools.com/xml/xml_whatis.asp) * Main development platform: [GNU/Linux](http://getgnulinux.org/en/linux/) * Targeted platforms: Windows, GNU/Linux, Mac OS X, BSDs From 85f46f2b485e166e469f2f2f32f2ea5d19117c85 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Thu, 10 Sep 2026 16:50:49 +1200 Subject: [PATCH 65/95] Use QLabel::pixmap()'s non-deprecated by-value form on Qt5 #824 read the pixmap through the pointer overload, which Qt 5.15 deprecates, so the fix it introduced compiled with two deprecation warnings of its own. Qt 5.15 offers the by-value form behind Qt::ReturnByValue, so both branches can take the same overload and the difference reduces to the argument. Equivalent: the pointer overload returns nullptr when no pixmap is set, which the old expression turned into a null QPixmap; pixmap( Qt::ReturnByValue) returns a null QPixmap directly. It also drops the null check, so the Qt5 branch is now a single expression. Verified both arms of the #if, since a preprocessor-branched change is only half tested otherwise: - Qt 5.15.18: deprecation warnings for this file 2 -> 0, builds clean, binary runs - Qt 6.10.2: builds clean, 488/488, links - 22 example projects load and export with no crash or hang Co-Authored-By: Claude Opus 5 --- sources/ui/imagetransparentcolordialog.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sources/ui/imagetransparentcolordialog.cpp b/sources/ui/imagetransparentcolordialog.cpp index e39b71802..180dfd54d 100644 --- a/sources/ui/imagetransparentcolordialog.cpp +++ b/sources/ui/imagetransparentcolordialog.cpp @@ -66,8 +66,11 @@ ClickableImageLabel::ClickableImageLabel(const QImage &sourceImage, QWidget *par void ClickableImageLabel::mousePressEvent(QMouseEvent *event) { // QLabel::pixmap() returns a pointer in Qt5 and a value in Qt6. + // Qt 5.15 offers the by-value form behind Qt::ReturnByValue; the + // pointer overload is deprecated there, so take the by-value one + // on both and the difference reduces to the argument. #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) - const QPixmap label_pixmap = pixmap() ? *pixmap() : QPixmap(); + const QPixmap label_pixmap = pixmap(Qt::ReturnByValue); #else const QPixmap label_pixmap = pixmap(); #endif From c147e6562d56f1de24b9fe0ecbeb7c2155749a56 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Thu, 10 Sep 2026 21:49:02 +0200 Subject: [PATCH 66/95] snap: add libcups2-dev to build-packages Qt6 PrintSupport records Cups::Cups as a third-party dependency (qprint_p.h includes ), so find_package(Qt6 PrintSupport) runs FindCups at configure time and fails without the CUPS headers. Build-time only, nothing is staged. --- build-aux/snap/snapcraft.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/build-aux/snap/snapcraft.yaml b/build-aux/snap/snapcraft.yaml index 32d0866b9..48fedc152 100644 --- a/build-aux/snap/snapcraft.yaml +++ b/build-aux/snap/snapcraft.yaml @@ -85,6 +85,11 @@ parts: - qt6-tools-dev - qt6-base-private-dev - pkgconf + # Qt6 PrintSupport records Cups::Cups as a third-party dependency + # (qprint_p.h includes ), so find_package(Qt6 PrintSupport) + # runs FindCups at configure time and fails without the CUPS headers. + # Build-time only: nothing from it is staged into the snap. + - libcups2-dev override-build: | displayed_version=$(cat sources/qetversion.cpp | grep "return QVersionNumber{"| head -n 1| awk -F "{" '{ print $2 }' | awk -F "}" '{ print $1 }' | sed -e 's/,/./g' -e 's/ //g') snap_version="${displayed_version}-g$(git rev-parse --short=8 HEAD)" From 2926ca7306e2310d27649133bc4d11a54a7061f5 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Thu, 10 Sep 2026 23:31:52 +0200 Subject: [PATCH 67/95] Doxyfile fix version name --- Doxyfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Doxyfile b/Doxyfile index 2932b3a13..02f275398 100644 --- a/Doxyfile +++ b/Doxyfile @@ -48,7 +48,7 @@ PROJECT_NAME = QElectroTech # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = " 0.200.1-dev" +PROJECT_NUMBER = " 0.200.1" # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a From b5722c3f2a06bda96a8d3c458647f092f2fed4e5 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Fri, 11 Sep 2026 12:43:07 +1200 Subject: [PATCH 68/95] Sort the wiring list by wire number as a number, not as text Follows @scorpio810's review note on merging #630: ORDER BY diagram_position, wire_number sorts wire numbers as text, so "10" comes before "9". Confirmed against the corpus: perceuse.qet put 111 before 12, and affuteuse_250h.qet put 45 before 5. industrial.qet happened to look correct only because its wire numbers are all the same width. Wire numbers are free text and are not always numeric -- perceuse.qet also carries an unresolved "%sequ_1" -- so the ordering has to cope with both. Numeric values come first, ordered by value; anything else follows, ordered as text. The trailing wire_number keeps ties stable. Fixed in both places the query appears: the CLI exporter and the wiring list dialog. They had the same ORDER BY, so fixing only one would have made the dialog and --export-wiring disagree about the order of the same data. Verified on perceuse, affuteuse_250h, industrial and tremie_vibrante: zero out-of-order numeric pairs afterwards, row counts unchanged, and "%sequ_1" now sorts after the numbers rather than among them. Folio 3 of perceuse.qet reads 0 1 2 3 4 4 5 5 6 6 7 7 12 12 where it previously interleaved 111 before 12. Co-Authored-By: Claude Opus 5 --- sources/cli_export.cpp | 9 ++++++++- sources/ui/wiringlistdialog.cpp | 9 ++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/sources/cli_export.cpp b/sources/cli_export.cpp index 034005d03..314d61606 100644 --- a/sources/cli_export.cpp +++ b/sources/cli_export.cpp @@ -564,7 +564,14 @@ int exportWiring(QETProject &project, const QString &output) QSqlQuery query = project.dataBase()->newQuery( "SELECT " % columns.join(", ") % - " FROM wiring_list_view ORDER BY diagram_position, wire_number"); + " FROM wiring_list_view" + //Wire numbers are text, so a plain sort puts "10" before "9". + //Numeric ones first, ordered by value; anything non-numeric after, + //ordered as text. The trailing wire_number keeps ties stable. + " ORDER BY diagram_position," + " CASE WHEN wire_number GLOB '[0-9]*' THEN 0 ELSE 1 END," + " CAST(wire_number AS INTEGER)," + " wire_number"); if (!query.exec()) { err << "Wiring list query failed: " << query.lastError().text() << "\n"; return 1; diff --git a/sources/ui/wiringlistdialog.cpp b/sources/ui/wiringlistdialog.cpp index cf80a6025..a28f2425e 100644 --- a/sources/ui/wiringlistdialog.cpp +++ b/sources/ui/wiringlistdialog.cpp @@ -52,7 +52,14 @@ WiringListDialog::WiringListDialog(QETProject *project, QWidget *parent) : "SELECT wire_number, from_element_label, from_terminal," " to_element_label, to_terminal, diagram_position" " FROM wiring_list_view" - " ORDER BY diagram_position, wire_number"), + //Wire numbers are text, so a plain sort puts "10" before "9". + //Numeric ones first, ordered by value; anything non-numeric + //after, ordered as text. The trailing wire_number keeps ties + //stable. + " ORDER BY diagram_position," + " CASE WHEN wire_number GLOB '[0-9]*' THEN 0 ELSE 1 END," + " CAST(wire_number AS INTEGER)," + " wire_number"), m_project->dataBase()->database()); model->setHeaderData(0, Qt::Horizontal, tr("Fil", "column title")); From 2322e6fd126264b165f1ee33aedef0d6de83256b Mon Sep 17 00:00:00 2001 From: ispyisail Date: Fri, 11 Sep 2026 12:52:19 +1200 Subject: [PATCH 69/95] Write the wiring list CSV atomically, with a UTF-8 byte order mark Second of @scorpio810's review notes on #630: exportWiring() follows the existing CLI exporters (QTextStream, plain QFile). On Qt6 the output is UTF-8, so encoding is fine. Once #830 is in, it could optionally reuse BomExport::writeCsv() to get a BOM, which Excel needs to detect UTF-8 when opening the file directly, and an atomic write. Done directly rather than waiting on #830, since neither half depends on it and both are small. The bytes were already UTF-8; what was missing is the mark that tells Excel so. Opening a .csv without one, Excel falls back to the local 8-bit codepage and mangles any accented element label -- the common case for this project's users. QSaveFile replaces QFile so a failure part-way through leaves the previous file intact instead of a truncated one. QSaveFile is already the codebase's pattern for this (QET::writeToFile, qet.cpp:664). Verified on perceuse.qet: output now starts ef bb bf, the header follows intact, all 156 rows are preserved, and the file parses as utf-8-sig. Pointing the exporter at a missing project leaves an existing target file untouched, where before it would have been truncated. Left the other CLI exporters alone. They share the same pattern, but changing exportBom() would add a BOM to output that existing scripts already consume, which is a behaviour change outside the scope of this review note. Co-Authored-By: Claude Opus 5 --- sources/cli_export.cpp | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/sources/cli_export.cpp b/sources/cli_export.cpp index 314d61606..16b9b15c7 100644 --- a/sources/cli_export.cpp +++ b/sources/cli_export.cpp @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include @@ -587,14 +588,23 @@ int exportWiring(QETProject &project, const QString &output) ++rows; } - QFile file(output); - if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) { + //Written through QSaveFile so a failure part-way leaves the previous + //file intact rather than a truncated one, and with a UTF-8 byte order + //mark: without it Excel opens a .csv as the local 8-bit codepage and + //mangles any accented element label. Qt writes UTF-8 by default, so + //the bytes were already right -- the mark is what tells Excel so. + QSaveFile file(output); + if (!file.open(QIODevice::WriteOnly)) { err << "Cannot open '" << output << "' for writing.\n"; return 1; } - QTextStream fout(&file); - fout << csv; - file.close(); + static const char utf8_bom[] = "\xEF\xBB\xBF"; + file.write(utf8_bom, 3); + file.write(csv.toUtf8()); + if (!file.commit()) { + err << "Cannot write '" << output << "': " << file.errorString() << "\n"; + return 1; + } out << "Exported " << rows << " conductor(s) -> " << output << "\n"; return 0; } From d2e75b4195b47e135f593065b822aa1c25e93d70 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Fri, 11 Sep 2026 08:24:43 +0200 Subject: [PATCH 70/95] Removing the qm translation files as by default they are rebuild by CMake anyhow. Changing the output directory which pointed to the source directory. That avoids polluting the source directory during out-of-source builds and it is standard that these files should be located inside the build directory during the build step. --- .gitignore | 3 ++- CMakeLists.txt | 2 +- lang/qet_ar.qm | Bin 170389 -> 0 bytes lang/qet_ca.qm | Bin 314038 -> 0 bytes lang/qet_cs.qm | Bin 305893 -> 0 bytes lang/qet_da.qm | Bin 267779 -> 0 bytes lang/qet_de.qm | Bin 364955 -> 0 bytes lang/qet_el.qm | Bin 264794 -> 0 bytes lang/qet_en.qm | Bin 341409 -> 0 bytes lang/qet_es.qm | Bin 252418 -> 0 bytes lang/qet_fi.qm | Bin 33 -> 0 bytes lang/qet_fr.qm | Bin 218692 -> 0 bytes lang/qet_hr.qm | Bin 81310 -> 0 bytes lang/qet_hu.qm | Bin 357978 -> 0 bytes lang/qet_it.qm | Bin 281852 -> 0 bytes lang/qet_ja.qm | Bin 185847 -> 0 bytes lang/qet_ko.qm | Bin 248617 -> 0 bytes lang/qet_mn.qm | Bin 197235 -> 0 bytes lang/qet_nb.qm | Bin 250361 -> 0 bytes lang/qet_nl.qm | Bin 303331 -> 0 bytes lang/qet_nl_BE.qm | Bin 367267 -> 0 bytes lang/qet_no.qm | Bin 30 -> 0 bytes lang/qet_pl.qm | Bin 308079 -> 0 bytes lang/qet_pt.qm | Bin 91422 -> 0 bytes lang/qet_pt_BR.qm | Bin 386099 -> 0 bytes lang/qet_ro.qm | Bin 121117 -> 0 bytes lang/qet_rs.qm | Bin 44 -> 0 bytes lang/qet_ru.qm | Bin 292077 -> 0 bytes lang/qet_sk.qm | Bin 37 -> 0 bytes lang/qet_sl.qm | Bin 40 -> 0 bytes lang/qet_sr.qm | Bin 44 -> 0 bytes lang/qet_sv.qm | Bin 302609 -> 0 bytes lang/qet_tr.qm | Bin 312362 -> 0 bytes lang/qet_uk.qm | Bin 289388 -> 0 bytes lang/qet_zh.qm | Bin 264181 -> 0 bytes 35 files changed, 3 insertions(+), 2 deletions(-) delete mode 100644 lang/qet_ar.qm delete mode 100644 lang/qet_ca.qm delete mode 100644 lang/qet_cs.qm delete mode 100644 lang/qet_da.qm delete mode 100644 lang/qet_de.qm delete mode 100644 lang/qet_el.qm delete mode 100644 lang/qet_en.qm delete mode 100644 lang/qet_es.qm delete mode 100644 lang/qet_fi.qm delete mode 100644 lang/qet_fr.qm delete mode 100644 lang/qet_hr.qm delete mode 100644 lang/qet_hu.qm delete mode 100644 lang/qet_it.qm delete mode 100644 lang/qet_ja.qm delete mode 100644 lang/qet_ko.qm delete mode 100644 lang/qet_mn.qm delete mode 100644 lang/qet_nb.qm delete mode 100644 lang/qet_nl.qm delete mode 100644 lang/qet_nl_BE.qm delete mode 100644 lang/qet_no.qm delete mode 100644 lang/qet_pl.qm delete mode 100644 lang/qet_pt.qm delete mode 100644 lang/qet_pt_BR.qm delete mode 100644 lang/qet_ro.qm delete mode 100644 lang/qet_rs.qm delete mode 100644 lang/qet_ru.qm delete mode 100644 lang/qet_sk.qm delete mode 100644 lang/qet_sl.qm delete mode 100644 lang/qet_sr.qm delete mode 100644 lang/qet_sv.qm delete mode 100644 lang/qet_tr.qm delete mode 100644 lang/qet_uk.qm delete mode 100644 lang/qet_zh.qm diff --git a/.gitignore b/.gitignore index d0e6f45f2..c52020c0e 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,5 @@ doc/* !doc/QElectroTech.qch QElectroTech.tag -!doc/doc-utils \ No newline at end of file +!doc/doc-utils +lang/*.qm diff --git a/CMakeLists.txt b/CMakeLists.txt index 52d8fe189..c231dfdcb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -189,7 +189,7 @@ endif() # fail with "Premature end of document". set_source_files_properties( ${TS_FILES} - PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang" + PROPERTIES OUTPUT_LOCATION "lang" ) if(QT_VERSION_MAJOR EQUAL 6) if(Qt6_VERSION VERSION_LESS "6.2") diff --git a/lang/qet_ar.qm b/lang/qet_ar.qm deleted file mode 100644 index 884f37017afdf91ffb77d78bfd3edcc4e7eac71f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 170389 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 R_O&1U?XlOJe|uub{||b1bkqO< diff --git a/lang/qet_ca.qm b/lang/qet_ca.qm deleted file mode 100644 index 1c17ed01a7b572f0efa425ad1c143ab7066e0937..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 314038 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

t@Honlr!!q1 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 C9p|k8 diff --git a/lang/qet_cs.qm b/lang/qet_cs.qm deleted file mode 100644 index aada95261cf11bdcf6ab2139b4fd104fa3092277..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 305893 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

51WIdu-_!B8T;mkcW-qd$cfJB0d4CXn3< zJkY#&+8YqE#B(#YLW##4LOra{*S^;-Su7YQ6y@uFp1Zkc_-paqlmx zArAoSW4QaZh>YSBeGlt#j3P6RN{tk3gwzZzKaEDoxquRKmo^>D3p3Bbf-`K(eyIqm zxhzldf*G_Tqdu3#+NFD!4{ugMZ`9l(%2|-{aE?eL*9j{p0B2-8Jk9a7foPNun2t3Q z5T}81`a0ekw&eRO{)3OS;sct{ZjY2x@G(;MLoS~^9!=Gx4Ute;GHfn}A{=4QE<&03 zkZtB9$^vd5U(KGXqL6q5fkmJvO(riOs56)(P-EL~;;WAvh`gW+8PqZC4lgAtTy6qV z^wN4oDQzo*Y|u%mOUS&v<>$kAWqg9nlZj0+!pS5<#c7T{=Bp}#pi?>FerGg;?nVyE z&cgPTK7OmEB*phSIlA8zf38OZ%H91aC*1G25*`d4kREP}8(eDQiU~gX9<4a*4XVE3#xdwUl*k?ZBD;YUdEpZR|G37JhPVx$U{MRw8?bc#UA(M$eesslf#Qyn`1e z#}?rqbcgi~5QYbxYdz!@_5Cwj2HIaD#7m0z|80=_(0I8Tdkn%bHDm1&Yg+Pf3dn#X z!{Fxb#{S#Fm4 zuzYp`MH;k)gHhzz)5kE*tf5Uo=`mPeL4&%*TTb(irV8&5ZvqGY>>lQtAirppEZ~zlr-- zilU;W%;V&w*3d!*0AnpC{TNO$-e2jiz+A#J9i9H5 z#zz1pbzt?UTQ7Xp#0ZS|t4 z70!3QR4%CtthrcTl^vX2__w@p%;Ksl(lL02nTPd4`Nwy2q9Z$8uAuTP&{_=ZVjMu4FV`M?`>m}T9HPGzq{(KYA$oC;<=I!`Iy~u-hh!vPZDk%ceMj25US-cLb~g>e489cd0)-pT>Qwk;aA&mOrkwbh zd#FWEYWrNOX9IY=q1tW30R_oREqB2HJ{oK;tsB6_md%AKTEO9(s>FbE>CY=6w|CSZT>i_Fxr6hWJMT#Puy2g*0^SJY%kcJxfxVVH2f$YaGJu{{ z5}bedaigv9e8{@;8+5I70t#ssxX=O)+cBL?O$1aPr0SEQ#N~6BR6e6wQd+d7XDkzK z=mAk}|LkO;c*~rwOuX56wnkTz;w|39r~G(|8U!UTWDpScYOe5BX7}b!XlZv7T?Dh@ z=*%uEl4CW1!cQ&&^=XT9V1>4toBc)rH$>|c;842q@C5;|9>H@6E&bZNU*Ti(ByZ-| zrByu{U-4;4W-DovP)^cc3FiF(?Evs(DB=MM-Om_d8f&#rL51H=eQIB`mtv%hFVlTG zGk?hoL~YNR@k=vUMRsk_ggy>OUYODUL?IbUHuunXeL+P7x2yDBok!z4RZsD^zMf@Dobdc+L;Xw**qXugLM zXN!kHLqx_^UPjkG^r=0gqcrFpGPmv{f4{&3yL~wQcV+m$l6pip6EYj)E;Nhn~h|0ds(6o$wLl zjbN4{)i-F?oqtn;vFX*`hF8egW<0PH;z>v;*WQ9UrRPEzy{;%}nVk#a$jBQ8q)??R zDcQ^xf!SDGr|(zlaqoHjvB0;Vzrucu{HXx~44VN(KW5;ffO&ngv|Aib^Yt zY&P{WKz6x>fgIUG;Z1t~*{*{cw?{8jmP?T$$R)Srmn0ce@4_$_t2aFgA6)VXY&|18 zCi#@UInPlMQ7}{7*wZpLL`~7~|7iknNfxlBEo6-=asgd&q`143fp|ZgtOFZN`*HBP z*fS1}KuEJ^&Z1;Ay%8LTz2dC%VD=-XB!a6GHe(beEr8z+aI^50?G>P4Vu>d677DyF zX^jm&rENUup!_uF!u(lcFGBFCbE`ltDUOLs>;;4gR>te*>sDwp#?yGV8!?41**DxN z{+aP~#&vhbP;M3M!Y{I6t%w+?M@P%u=I)Gqz``kXBwgn^6hrN(xU`p`$w%*PJyG%& z?8DhVbL{lO=CkYzeg=;jvO0j6iB0?yja?kOg!I`H{A6?N4L88_?dG6e+l($=T6ogl z6wu$C3UMM&Xp=PhL8w9fXzE!bjASqQ8k}BzLfp+O?rw^C*brDVyFgIwniscJ>X%)jJ;_ z-B($ja7K#N+UAy)kxz_RIE@#VOd?C4KzGPz+$5}B+x@Diuu}*J=gW<P9U?pguL(j?tVVSo~#G= z^U#M&ci-m)eY&|`dO?YlW3dct3`65iH5w^p2pL&Ux8XA%ZL&s?Vg;=;AXUni%w8~$ z0(#k?A*A=ErAI>UW~ZE7c21?+LBXgh*B6Z)L@Qs&JeY~)6fI-feg}E&ViYZZDirm% z$|<@8Ka*n-2@F*a#YJofO$5cbkfGG9@LPBc<6j4Vc2*;_nd|fc1qbt%QO)R9>Zo9X zC~}i(LLh-z12n3_*>R>L_t;j*x1h+VGii`if@SuMP=K?>K}&!3sJfl?JT~1uMkui42r#5m}SSRl0q&Y{|w0oc^ZlI;{^fGV|gzvn7cHsu6StqmxEv$hix$zeqaq zOGuLFjN5CiiH^qJj81dRjK8@ieWQ5m+U&}0)TZ_ZkWYZi29AkmLTfj_RgBY~ui4lEFLFpwq5>@4nxbdkq@QLb6KLY^ko99hGj97(_6 zSlr_xjFG{&`v#udGU`wU=jkT%pm-%*!7~-f}6nhH37134d zOj$i*eW`@JUzob`32V$lZ6lSg3ezHZi_c*J&|2#?*)=voMy}Z&w(((DyjFV(m?r!I zKx#bXHTE5KO>7p{&SJbLO=NT>)}cM!`_UCT#y>KYxp`CHlS0}v(RIFJz}9q^r51M! zO{bB47U#NwdR3wYY50jIU6`7>LIaS$-jB{MZZy}{5T$za>}CIlYj2+A*X}Q`;RmPy zbM3P+mYvZoiQpo86fWYW%^J>X>rf2v%V9I>U-0xa&{v5a9r&#|732G3sqm}JI^Zjt zk?zNrauz$}Y0RV<&1?oByuZm>q%AeH{W{1J(r^KVko660QcdcaR~xVfuzmpfcreZN z=AiFSeYwd)Lo84B&9Gl$&AMa+HTwPCudtYQ7vW->pJp(w7=!Q(FcOQaFV`EbVe<+Y z9Bd0RaAfS=>?*7Uszti4MK$odnzFJi@EletWASVsm|@TIMX5&o*yPaoV?<(}H5R7u zyE!`>_6LxsX;C{RfbCo(Y#*bS&XRlKj`+j5zy0pmEr=?LAx0qvB5uEcaQ6b(3MdLD zqrQUppbi|xjKLzyZLGq>6S>6NdZuh!(&n(M7?5M{?QPvbCh6Rxm<&NFeHUJs-oHj9 zCbGI@xy$)*BpRpyy~5HoO8PwBE~3iiQ)2DCB$S&=B=ZvXjU?}LzO)R#Rm%z`7nb|^ zzOj#jB-9JLe_F^K1dh`@)DV?b{Az;mPi@E7M{gnQ15_`h3T`v|wxE8RW6#kW9=2-k z?}O+x*P?>~?Cgd*pkI`Jy_XkQim17kcl@G#X*1FG^w-bt{;4~76r&6Er!S?3tS6^& z%>$QKGY-Byc<*U~q?GIB zOe4l5X(IQR$|T(hKWa!51`#zY*g+!`a1Z87$ODu;y&IYnl#Fhm!g$ z+u7Fr>0+M3pscVT%y8!**ak!Tuo~g_N+%T%&2vsP)(AIl zaNu;hOy~I3&tb3DYn^C_?(=w-gZ5Xe`z1mv&fbNo*p0RcXIxWmzdjXRFdJ{rUYn z{Ix+B*oo`W3jY;#*VIt#Pg(kFt$sJEK{&5>BG%A!`Nl{zXbxJ9CoL4oxaCAsgAGJ2 zv7iX8{L!jvA)=*(k5*~RBCZ6Bd2(*M<478goG5O&^Xt5%mSq|}(b*K0IZm|jLJ#sJvz!q~DKVc#u0Usm+X#g9Ja zO>xq^coPStGHmV@!3-3E&}*7^i}cSMknv-}Prr~$=?9szFFvWclJ|K9&5{2pPs3I_ zA~NFkE_@>@@9VHbyYEVzd>AV4>q+$PybDp~*Sr70-8;ogy`Cxp4XeyNIMC-@sHGWi z3pA5^PaofLvKcfZDiN8)~%#}LHy%A>sWg{Qm^i=OJq`(^^UNQArG!R%W`aJh)7 z^WSzkw5*1qd)g&$&Z3t_^1sn=h(FE=>8V-B`4wI|I~-ng9G$6-EPGco=QE@jp|6;$ zBx6wTF&GNQ4|e#-V+2glLzuk~ApzlgDl{l($lP~Ta(`b^3GP5&Y&BMSo;klh2^uAA z?LOE?Pn%zycpq&(d$pFr%!WNNIvv`q11nZDKpG9-5wM@CWgA6e(-6iERb>vaHH=rQ z$rTnE86yTp7!50pE@J zw#otgAbQ{ByNidO9(#nSWE+MDu_s>oPToSgoP7w(kNGH$nYlOEY#4@df^eV%w>s;# z6Miu%>Oq)1m*cgAP{K@P)x`-b9%03)cG`ku6)Jazfcful$7uz!za9?=RV)0nrXlf@ zWbF|HsVw}Z6*tgis_xj&N0mVL@0~z+x}a<+LH=v z<{MEptd-$;TJySpYU}Dnp>!6bw}8P0R*}iDmxSgMsJ!97BVkj zhyjkn{)B>$88YY2xUHIJU<>bu!5CHRaHk6d6*vP50x?rWL>*M1mkLj^xrZy?>~EAG@Ej%~<5C#0 z+i>#IPu)grbf?+E8y4k*od7(BL(ngTUz9Q20ko^F;hvR_HQr*B2wbh*BD7l|Zv~Im zrX=}i9)7YBuqIiU3S#pB-xgTq0MjaD8+xr-t(cK01LYL|Jvqs+5wljT;cOuv^_+R$ zYhWuvHfk~^$G1sBazfwSWMXT{754r@a*dzDOg5Ru^v$yDo(6>UcaxEWWD3#p85QR@ zm`P-%Tns-G6|Mfg&TV%UR|VD!lDh6H{BMhzAaJVH_LhLx1lDchL1e;E1mD3}ejh(X zWQtv&FGt_4?Xw2;ky_CpxpbXgmC@Ek>>vt zUCDWwb+^4cl*!b_sya7YUzE>%IW>3aBT>#~t@(#}Yu4W4@}_e6-1ky*C)dp!G{wPl zxnSBZg+JkyF*)uaiQ!xC!8Y^_KTN%KIX$;i^u+gK6k1+)I~1d3r2Uy0Ct4+2$Zj+{ za5c);RI#04q2+u6`$DlpVNEkEtwSajdtDrQIXN?M;j{I|#GP8T75$l51{zKwCor(9 zP8!91gnu-=XicerSD;KNx&<$RZy1OaZ(qK9CgD)U01-*Sw`U@(wFzTPRTQ~_Ir%PL z72gsQjU4HdbZ;U@vEHk-HNX^I)aE_NCP&eFjeUHgtI;YvMC1$Kh@QdfuVAqM|6#Rn zL{(S&Prs+L)yEZ!&Nei^uYxZi_XEjtIsargsFLt}e65dVZdW_h|FnHqpQQ z-iX%4)7huhgI8=JVa=n@_*uA29@8zz-GNAFyU@SmnBuLxWuoJEod%>4!nYo*n3eyX zDq4zuy0$-twhBc2OPH>YCzYC88s#hAz(WXGJ7wfZo>2WzPR88$KY*5j`v3;X^4##E z-)3#S)0HQxiz%rP^)DXaB(e_lBI!=iDci}g0uJ5-lzI2B%u|ZRWBhAHgbk1n_ zF8Wcls5h+qU{A-U$h*O>n1QQb*f7Q7U%QMyf?K@!qbLEZjlY70_c9K6@`G+?ogwb> zCC(zTEMbC-VGi6!grHKmf#DVwRUw6*G0x3qo9N_>DV*BZ8C6B5~%@QIjgcf9f-)6XY>?*~hebp1%06Kde1lAaD>l zW5jH2Cfr!n4*(Y`U*-y;nl$`1@Wm@j$`oo$Ax1O0tR2uQ5;@Zvbkf6>Hvg9Fd=Ammoz63yW@5vJ|LH?yXg84j zW0W63Qo+TxE}(~`=~l>ctvbtY2$-d5%ilz|0h|m!*#wxg)sHT2tZp{nh%TC>Q`J<$ z8&&QQU)pP6^Hi~zf@2YJ#Hgq}O0j3V^$9izYKbNjH$UF>=n4)-e-nJ}gu<;ySPDw( zQTU0#x2*{U?t+VBtj{aesMST=CH}0gy^f<3GGNKCr2_rIG#%u|hi~t3?bKJ8xgQ~bcw3tfC0&uA1YvM^N-YMuQWsMHk@gNa`zF)8dfXkh*_WmKq^3Dg#=h)-JVbB3^6v@b4jPStF;z1#^-CeB5qQ-wHXbcH z$T8|Uz%W=t593P2K0Lp@gyORZ5$guz(TY$6lEs**^XMZknP($(<{y|aw&`S8jrNHgY4-1AaS z!b~okSES09^dT&PxKT~tk$1*M`H~S&Mu}=rFZ5S{n$}=fbY$$uZu<9DfSDzD0S3z^ z%Aar;Fi;@o)&)JpKbZLF72_#s+~CLM6i>rs zWC}kS;+b4Q+1XcsN0cv`SamI`^a^-FYP>3N$ejNeSIg~&JFFu*P;7POB%Kkbfa1Zn zt)u&C)Bm2#qh|CbU!L7W!6M3MDiFPD0C2>9F|OgAIZhLz4kR`Xe&x@|u{(kDsGjsD zh@{2M;EXztij43k>3b{PXrsBlK@S;EcEb-_-{7+wHFP}a0w`JQ^IZ!7&xw*37fXX6 z70lPmcy@$+lr)HwX~2TCWDe&P+CibF6n>7eW{Gt$xT*59xmIb;AdBR9Aw93hYn9K- z2PM#lDLbIKGVImMhd2Qkv}uf!BVrGJ@&y{R;njt5)DE0`n!_HFKaW2#cu$V{ULAb5 zq4z(L3QBl!l!a@J&iw9Q3+!rSPrZEac2cWl;Ec`yneT6Bz3<1?i-=FFOcT#bqzM`! zgg934V6O$M^`5v>g*a(ySL!m;hRU7E>yAbN=Hjg)0)_~zvu|>g@3lNfZ8*!$P76p= z{Wd0|xJX`Zo@%z7o!WUzVNV;wE3+effEfFn$>#4;xNaPU}F$Sgx^KK zl(x9T8j8tgyC=|Ci$m175HJ5qwod|PE#<73{XJpOSy`xIGWbGMqq549RV$w8fp_nooJB`OSSng-=zxbNfo{aL^ zHzkbHl1<@a^Q=$5Y;AOB-fMwg(qrtrgNr^1IXjQ!f(n-_lb>v9sOQLbk*pXbNkavvYS zyOdX=^KWs4LlT;5)}>*+bn$uDeD%j!+=e4b_J?3t{C8tNccb&w%Rgpk!J#QwcQyIS zTtCmAwgZKw;b2=RU<*TOM}$BwUIQ1!1E++jN^P>j7?OJ5Uf+~6*Tq*m|fS4bt%^d&tQmaxA%U<7n4(F=q1?p~) zYP#*TtMpA<{t0UwXK4b31n(Seu7$B*V)dGjvRG5CK#@1paQC!b4-OJ}E6PE&!`$v* zM_K8}$Le%M?i_!&jej$5CH(>LxBeL%iY8;sihffoQOkPO*s6Md)Dpfi4cBG;SS$XB z<|ler_a@*3teQW+>P}hz>`(eP;Ylkm#_s&(sLt*tS9bs6$||ElJX+H$cJ%_gHAr9K zXyKQ@$oCq^XATjPQMf!Y^tQSl?@hHlHWoP>WO_ueCbByi#ju+QX~%DUcX9A@ie
ad*bV)ICgB-70I*Z3*s`=Se)NDnl-C+k4 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 diff --git a/lang/qet_da.qm b/lang/qet_da.qm deleted file mode 100644 index f50c1e03e63be07aec4422dd24d3a961b91d7f7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 267779 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
R( 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 z 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­Km{y`Ej9chmXiR%loSF3co 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 k7$si|!K}*{W7{QJ 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 ub-xrKa1^9%`p3I{J;)^2vUOk>7IoV?nVicEuih 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

2DC$o4bU%8{ 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

Q7Ez3<#fA}ItKqzMAVnkCeb=wfE(CDbh2yO}a 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 PIA`3y#<{)qmRtTm(Ziw{ diff --git a/lang/qet_en.qm b/lang/qet_en.qm deleted file mode 100644 index c09c7e9ad3c53c26c3878d75e677f792a848acc5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 341409 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 diff --git a/lang/qet_es.qm b/lang/qet_es.qm deleted file mode 100644 index 168fd36f8b6a52ffb455da947828efaf3c3cfed9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 252418 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 b;e?$$!rI*~G=X%gT+Yb<9Qb%;+qVA?av^UW diff --git a/lang/qet_fi.qm b/lang/qet_fi.qm deleted file mode 100644 index 097fde109fb436e2bcc0dbfda37d65fc6d30bd39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33 ocmcE7ks@*G{hX<16=n7(EZlo{IRgU&Yg%T!n`Z}*#l*-60Q*e~v;Y7A diff --git a/lang/qet_fr.qm b/lang/qet_fr.qm deleted file mode 100644 index a137bf9871c7178f7c12840331e1bec7297a78ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 218692 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�P(4n&|ne#&+LUlBQNZ* z+wT&ZT!dWrkkH%_eldHT(0q|U_FH}lt^@G%rWC<-`go$~SwgE0=tn&NA+&xCKlpQ+ z&^8zP?siOQ*P$x<_KSsf9YeripfH)3OiR&xG`Vo z7>9WDcB9a74B}_O0YWExTVkV!3tqwKr}V8Vbe)U3X~GqSbG(J_m$80_)IyIG#LJ={ zf`9TO)K~UGaMwiCkHv&w^!53i<3b4PC04$SOg?A05MrIz%eKM*Pw3}&FPY4Dxxyd& zgaJL@5}%(bgl=;}f4Yvs10f1;PZmN?L7!q5D%@bF@Jd4=JR9*~=2#&j0sd^ABt$QG zhkEt8FxV0PA|Oj)Xc?JI*sHL_VwrsTT46{c)+On!FsvWm%kP&EXF{9|3lhf6%|Tv0 zOBl1snfQ~D!k8_vj~%atu_HgAzcE*ccX~y%^{x<~A4@d(o-nmwbL3f(;9S(L8-#?O z)_sj;LgFY-)R~)v`APZ2bB_rNR$*TKmIw=u&LS3JCoI}JkC?Hru;>NqtEezx*@zrs z#bSkJ@zF$k77NR^93xr~EUav8kGd~k;k22;O6-^Mq#nYWt%ZqAyDO~8-HrOAg+h-+ znY@ibSa)(B;tCg%RTyt6B$KyE6_TspMBU*aY#eD_{~^MraMYU<+bf(~N!ScKr{4V( zzJD!jX%J4l&n022HNUP}S4cTM4)xX^VcQPGPoqZIc?9oWDq7fezybMNOJUE99>iyK z6ZWizog6+Z>^TiP*VGbHT?qYvhQfhBuR*Oe!pnXYp;ym@kE6a4 z-&Iif`V9LCUfpDJ4+r6Ax#j3T50uGwRuz7AyN`Nlim2urQ2$>Rh3|#ncbbdBPvoP? z>7v$V0`h^gqU4PF_R?EX%5MsNxi1=*p|1JjEE+$--){003pQUv^rNs?XzEs+opBTk z{b)*T;5X661NO2mMl9@i8GVZu3U?kAZ7bFxX3hXHPw#_b@m^T}1uWQU4 zA`hFkSS;h%hsb84Xm`;8eZf~^dGrOTNGH+0ts}8rBgINDaHi$VWYJ*_eqTRBChxjZ zbZiTG6)z(?&S`^qm!UBKhD^Tmro!}}3UgFqJy+P%E3;U?$Xe6~gG86<%h6wXEH+Z3 zUU!@(HXd;qc05OHQVjk;WiK{)g?YO45}TEQ{;ZiJHoFHuP)H>Q;XOk z4fYh@Ozac@y{g_%?A$*O`D9T~X}gg7+WTM(p!89eGlwOwQMf{)OzY zuXjQ8ANT}z6Cwt!4JJOeff)1+dfDi)7>v4%mdqCiRzjSAxmS!(!ERdgR=A{(7};bu z>aYlLPy-v{$9jl^(xwo1^Ae+%kA?r7Dh_|HLq0N59NGI0@kS5Dkyl|S51)&pYM&sU zkSE4{?0|UsN*wKKLu`6$aZDpy)H{yi*p?qKkI~||H&u~e)eOL-#aRm`V1KTmIH#`}{fC<3+;Pv)pBXLAy?}8O%87}eRnV7tGWn{C;(R0W zJJmyR{!!@P<`i-Mt#J5->f(ZV^H8^I#KmE4i1(nW#KCEOT zuJ0BL{mK@TH)UaebB)5#jxyPy0piw`$Xi~16H}Z5h|N7BZp&VSKDQw5QhUnD!IvKFuVPIrf#wizJEZx$pyJBE>_)rl7B55f9Bn-)lfA zF=H*{8QMTRYy-QVQeMm)0eQZ9BxaYy{Z!s!_P8wc^=F9}<}@Z&Btg6wkG$VDPQ0`d z`P`?e;-#Mg&d217mpkLW`Nze}vBmNCyW-_j$fxct5p#M6;=Yk$&T81j@uT7ur@6@I zV#KS7u-gSS#cNT=Fz-b1+Kf8rgC7>Jt+X;hyi*7LfM?~vmY|n-=k03r1HZ{+y?w>I z1+b1=yNLI6mx%YQpzv@nF;7H1SEY*2T4DaJv&HA@9FXT15?}bi@0n5+y1Y<0kIUrq zJBcp>$`Cv8T72=n74o*$;>#t-gO*PfUwxiRH2sD6x|x78bnV3tgPdR|LE?wui-@j& z5I^B(UOP|x_Gk_ITgAkmootYw3L0$`?4yIbMmq)Twz7~$*9Py|f4{~!U=Fc`b~1Uv z5*qV~3FsqE&=g3-bwl54ip^UKy?&}GeHYL9wN_L59sEjS0gc@!9nr54O$Bi&QNwbY z3eJdEy%%UIM`3?u<|a**rWVAXRT{?>%r`z$Q_BYWerSQhbJaDqqha4FS558MF2vVl zYn-h4=C0G4y6*7H-^Xbho<#rdjHjky-f;9&%4-^}#QQX?q-k6p^KQ{i({$BAV(G0k zO%LawPvWa-<~x&kh^xkJXd3)QQ;mo9d{ljZjmLv|M9w=jZPebl&k}_x$r?GIZg@i` z?-r|RpB;jJR}W45r-k9SR%yJ)n260hsc_FFP1i1U5#M4pJ$g(cZc|U=?}B`3V6-Nn zX;Y#>Pc;FthyxD(nuw2Bm&{O^teajF*%r_DZlD=-5OJu|WlhvL0d{v6#QX31tnfy% zW@s8me7~%4MXY9+9paV4CXJlG_Q}!=OSC86uD)j2R#%)i=%E?z;!ZSTy=HiKjN7nR zGpQo-X}MrUGAFs(gWDraG7k;SB*7)<@L^L7AL3>=g(=D+_Jzwe$=e8_7OJ4X_B;= z$giChP8+RoSEj-n!J4Foq3A!o)+CKZTz0vwNm_0}K2=|nT(t-GBd=&Su7jP|nW@=$ z7M!0VlP_SJO)ISD;BIMl%!i+Se?YVA0_?R|7fq_259+^en$*)+_fdmovg)o1U9Tz3 zJE2Lh34Jm*)1*(iPONf@W?x(~`t7YW`}J?puNt7)A8d>LhXM+p_s|?X*BNk|y`r4(#9W)I2P? z0&yi(^Qd+g%=3#(-t~&Y$&C~yR@OY~_rBa&r+YS=7Pu6_QLY`QtiRQD13H|F?ns0C6haYEazAwkR zHP_1I?RRT_U2(uU;N4p8lns9~PRn~gKz&nPt17=3_Sr-xD{)RH_qI{ED^V->JJv~@esnRTGv#>pDrF+w@43Sh6kW0 zF{y;MRWRbgR7Y*wZODIGR@Zi@JRE(vhca0aUzxn)No|KJu=AUOwqvics56#nJ3WHl zUmv0EJPQ2~hlX13-N=&ymT0}L`?X8fYki{55$kkG>vLor&Oz>$$;N$FxZOr3@6bTo zJ@6dz%1zpy-jJs@M%yzOaj~$6wpS_KUplGnJr(j9Yf!kYmDayF`UFdYwU!R$aL%TM zHn^^iSjo5AfyJ=yPyMx_;hmum_q3re*P`#!TqZMRD}0`z4I71i(mQ)?c##e0FL%_2 zzYmB1an?rFL!LJNgf_M-^tY+beDq5eYo}-EQGWz#rysS-zm#@{9rU-| zChe?#I4?SJI;aCrYiHZQ9|WJ#&U2`MbAn^Fi;CktPju5R+K4**avSa99;lOo#%PyJ ze1`q8?K1h05!$5!;#YQ8?V9pY*q6!Gu3Le1JKjUPE`1TkjnuB&2Y-CuL%Zn;?Bmr| znS4bPh5PKaTb9HV2(i;OwYxSu;k=khySw#uoKqd6 zO?7fb9`RC}_5gWhHMKVVSReGyifi|e$w6GxD?HRxd+@y)`vURWj8x1kq^-iir4?RD z)@G#7L7!fyJ+i6~@@b>?WJko?Fc0nNvzO2SaMzx`8AohZV{P_Q2b?GVq`iEoBJ6Ft zLWhdl>yR&NJxF_Neme2?lNIiNsPIu6?d|0l-=n-X_p>+l;~U82VZ&vr*mCW?8hGDR zx3u>{`(t0=oc6&i*pKroncRDv_QAmpki%H*Bb-ZO9e>E=Bl~KfSXL98a8&yeeuNbb z)4rS^LagO`?dz(r+dlOauCAjn(^lcVD%#gOA)ghswQr8sCBDD8_C3xeQX?6M3A}iKQP9<*(K0$Dt2t*{3tC+km_}R3}xzxasp` z^5=zgQV`-;`Uz2 zUBNB3#MCNX(Z*#UuQ|Fh3u+)-7Sfe%Q383wD_z;Cc;A)hb#`l!2UKpSvwIG^=Udn|w-)m8eWVMhl8yMg9=r>EH|hege?W&T%VfQ$>H;5Z zgj|m3`hPxx@yWWN;8n2e0A26{#E-tub;0lJBCfX6g|r@o<1weeDDZ!Xi#U6=6nF!3w*bTgcNaQ~nx7W94EP2Ku_%ds!?RF_-}d5_tk z+i-6_e&1cUxt!G=qh)gMR=Uk8TZy(u=yrX1iFkTUw{L6!{F$3>|1hlk=OelUGw@z_ z9d(C#BmddjLzmHY7xAC=x{O<}(|TdLj338{3B`1W?R<&n&(xxk#6L3wj(IqRV~074@y3E-wfE(QAjogI8qoEjM&| zxv=|5UvS?%fo; z?+&f*-E`Db4t;d*o;-uUTd4a~7xr1GvhGvUi>Pn5=st~bhr0UdKHm(7pQ)q!xeRh_ zHc|KUBIH)3S$&P`3%>ywbjH+ZEtSkK8cSf!ULJVk%+vtEkWfpg2> z_2%JN*IUl|0+V6KiAVJXW}v_M^o`yIho0GtHhLSo57@_1=?fRZbFLN97arnAJnkik zylHezFaQh#1Hmnz1+@OXKk+fvzXyT%`(=CLDed&d@x2#6TUuZ0H0FD9wZ8Q6aq!QL z74A5y@VZf7#slv+`n62{x{SW833ce__4=}pV~M}X)tCLWhUjc{y?#QQc@csyHQ zzA4r_sg%C_RM_>F8T#_GaSnBUafJsR72cVww|7_Jd`BgjtXrzyeiGI}?WeCb4R+to zQ(tR^8Gf{_zRp@7qGbVkr>7T*YMxN&a9N>mVVPVXt*=|G3)WXunAuHVFA4FeMKOJS zC-`&C0DVI>{KC6y`o`B_kITyIn;x78KN~2M9s8wRZ0BK}LO@7`!X&Y5`WyQ81LHkH(O?>?OP{q1`HZ0mX~RJhY#;dM8? zW&J~ZALF98Y{qjVxKf#kuW8`k*rw^cC;wgYKa(@WewOVx9|qmGmKYCZZve z^#e|nAs(&K56E|h9^TW3)_|P*>{S@lOD5B*W%9UKeb~9R=!XU>e0E$P_6v1+=o)?a z-Jh_Vt@^0vNysbL>!WMl$M*(1^wG|U)1f!?!>VH)g;)CFIm6Na4%LsyLcjFv9R0}J zouTjJWwOd&Wb!V7`q7&@qW)>6A3I_K;$n(^QX%wHjzs7uSARlO@sWP=;u}bBR_YVh zVSVdP)=zJg3BUVAKYaw^REN3xg+)*|e7>w-=(!aA^^N+aM-i{wU+9+&-hlgj(XZ^C zhWxIgKIyg-_5la$*Y>l495?FMhC&}~4fbD5i=grV>b-+5`P1SE(FbsW% z6#cF%<8l6`lYVav==IbDed>Kz^v9d)50t|D)|{@;600zDzrygH`U9Cx$TwT+51fXc zgq!sll?OnMCuHJ~r^2~6^%*DCxc_RIe3V&#bc!e9UQPY6mQS&tGDCl2XcwaXUiuS9 zK471LT9z%Mbl0 z=gr8M_vpVA-bySYQU9&`0b-eh72dm}|CR=S<>RgYzGEZNfi?P{R>Iz_ec1@2 zpQ{W81MDVmkHIi$0M0j<6`nX}uzdzQbKNGBr4=_6+4cy2dx)WEyJwh>(NJ=$1MK{k zq4Z$PWBmX_=`l##=bH>=3yy@njxv=00X?rBXsB@Z5z(FZ2K&4(M0cATDh0=)Z#~>l zt03y0+AfAVZ{b&C;|$InqtTa3Gt?{Sg#E*Fh6dfQBR{-tXs{o7WMDNz!=upCEQ6sT zzPX{=Yh?0Hs|}5c;<*c!85)1Yy6H8BCcnVrj||N-e2Ax4Gq{h2f2g|5&^9X;eW|5} zc9UBYZ&kz4Zpu3hj4*Vp(T8Zq3xlr{)^F=_gYU%>=#M`!^q7k0-|#o|*S;T)@@N!L+JJL(6eI-H?&uHWso6k%1E3?Y-k9#_M3)y8X}uo^T48p zX!ShwS5pnc`aQ(BH-=FgyPyv>(J<;J^l9-N!>DID$n)$Can~V-S_cf{jp@YN^fOFq z8j5)Z%Vf*3OwqVse`mwwA_s|=h%!tY^Z@%WO$-U!?h-%K$S|X3cf^Ba!_0&5n=gF~ zv$P!N5AqDN79xIo^f4sXN1l?@-Y{Pr4tcLMEQ*G|uj^`9k}wSC2bfI$YJ_2h0e*hS z6T^yFHTv|c4J%hHgr2@pm_>$F*DfP|b~GesZh&1(Gi=E0fc|@5!=}=BpKQ^v=@Q;| z+6lvEhZ)573^i<7|C3nyQNzyrap(_c8&VxG@09h1{WkEwj~W^d>Y5MelV$Q$ce%y4!z{L$i%hKpM0+txCM zOEa*}n$?D@osfTeWEgHaLCz1y8tynvCjRJ<;Z830WfvqFa@R+rKXFgty}>fsgkVE% zas||Z_A+_UGs8XCW3c1$hWlTj2WHXmFf$8zaw)?jj_=mjl{P#rbrf~&2g9==@DJO| z8S-ypKB`uR*M?~H>s$=43pgV`YhifPwgT+9x8V))B#NwIczZDx>+sm{?g8{Q@T$Vl zafT0-T!_x;44=aa!Olk;KA+YRy}4ufdJXfKa?kKhkM%9^Sz-S&hHqyepI^5PKcWud z{Bp3woE(UvFG>7jarCEtNUHYEI2ZC>QXL!(eIZHp;|tdJgCsZy!%uiCJbh0R*Uo^y z7bP)oJofVoNhVD=&ckqpC^rjK+>N|yr%YC%o5C9N6uK=`_$FH_m}tVe_aO??mPt5L zhVT4ZNJZ*k9#5)DMf$@YoA*|j5FwQ~4gG)WEZMc_0J$BO$`{&6G=7_8pFe|W)qbhc zB=pY{M@TiQj3s zi^u%dPLf)*+=}lGR!A*v+=*wHBzI5vt%6^rc0oSqulJPNE%!nGQC(q*QR>uh0{S&v z>SR5See;LpRjnei8fPT0dGO2Xep1((uEc6bNnP=c6FHeyo#!p3F(NQM%8YaaI zLtOZoFU6!IPUO6hV#i`Vp52s&&t8r5*W09#HnHf}wv)*VUXey-=Ays7M~ZuILA>oH zjfus2&M760Sy7vq`v7UonRz%ba#0$0Hj`*Zm=r$;^WE55nxw6YKI?HQp)~Ay-YRL< zQTVyfB+Y(kk2)$}n*I71QMZcH{IY9s9?BpsL_dk`UMVd)kwv_VqqMln1oY>Y$>eW~ zN{hdv4%caA@+qAa?rtG1{)v3HVGn7^3&>#{lh(9{JS!Qc^%GNY?zyX!TnzQSN1~Lx z4)Y(BB_(IxLtlD~w4o^Ss{%`<4L?-KpTiZN&`BHd4J2=oEp48P{!IIx3Lh1bHfP}H z?&lO9@{%@ZUWOj|NxKl=nZ1|7nop%&0WFE`-7f8l2Q$}7>8o)+x4lyO-4FP__JT~l zXoi%rJ_mi{W>Th*i*q~Wq+>~C(Wj^_ll4=6W}{P;pP$)DCwnFm|J+?VC7eRPx2$wZ z+Cco~66sX2Da5)Tl1{BO5lMRK6uzGz$X(|6#!~j;9XKEPM&YTcQubGjZ*)pJ-_90& z=nc~O_OPQ`lcful0}&@@Nf&kQ=o|SDJ4`I8X6f zy1RH6`u(8_TP>Bzn}tcaW5yxwmy^jV%#g`D`AfMeQ?O4<(&KQ%pMnn36YQU`7G{MW z{bX{_`BGkK#GArHq`cM^;x5aiJpVe_pLn3~K%&AsqLgPnN7HkW^sH$G=znkNnRVZJ z_zRi5%N2!vuShRv7RULu^U}+d9_Y`Ul=5d|-O_)_WQ((8avQbu*6s(+D_)Y`?s-ad z<-JV4XPfli8PD;WCViUefc{nm>C^d3L`&aDUsghXMn8o=`^#iQ2PoWPr|{|`>B~!h zLSD}i%e%N4GDuW+MQ;jtv6=4dSHuMnBM zTXUoC3x1xFYb@#(NPOo?W64R7qgcjRDl8P|^ZgaRcxJQc18 zY*bi>{ad54N%U#rj|&)^#3G-4>}_n?qyzH8cgAKW^wS{OX5Ap42KL5gcaawrY+`iv zfjp{Z8(n99zz7-RIB;*CCEDVgkZ zNuw9)2>vt8*fj*tYhT^iYiJ34Z+P6;3*RKOW<8C4!?7)=x*dWRgHTO!CqTVH>PezeBC?B zxUU8BprrN2{kDe@Z;u-HH$eQEQPz0;G4%dLi1EY%_^B7SjVHcXf1hML^#$^cZ?Ew3 zPMPf2IGKDys4?r-8~CpT72_3a zzj5e7Vz2EqyWG9K06&>!rq1pCq1Bt%anAAGhOUK?ad2mmYW_LL3`?*Of?}&WriK(#ld-K8DOt$^e zf5+8cD*S?d$LdT~UK}Id%)wN(*gfLXO7K2-1H^h53xf~A4yGEP$D>a_-Q?)~hBy;U zE*G|<-t2E`?AQkVLw{4_bm&Iq=6K(VrY70?VO zUBALVEi}1?qtCPSxyj8J>!dzzYIXS?@eNB%twZ2fiY+pEUPt{oewL}75%1GD)YPt8 zAEGXSrgo2=h?Y2*+6UMpZ}pMM7x|hxMneA2rP3 zRM}*im`XhVjLDJ$e=(|nDWoUf|IJKOcp>Op@%g5RV$nEnr8Pz5u7EySOoIyHK0O7~ zpb*p@TRJE_`O*|+?}PVmVTzi)ocQSoQ_Pgk#GN~uhO{q3)Owg{s2l3OZIw+UCwsyl zaMP#_xUT0^g@@0Wrs6w5=KRStO>BwtHK$Dpo8k8jJ7n^46BO?7G|hN{>-u?_X0NhA ze=S)i>pIz#IDI$j#T%yirJ%17JxvR1O+>tOGc9V1_?WxVv}EW>tm|ykGV3^PLDRD5 zc#p1~O)HG{#M`tpt)8|U-#3&rt#yGs<3!VX2LI^s-LyU#^62Vf+7<$Nr>{0`&&PTf z$ujNIcfk8hHSMz28(HC|w70{NKPSm#<&K)tH)kT>t!LU-7xyiGQelf%rbE}@C!aW& zPTi^ixpy(0E{8r)iv-iz8nA~`4^8LNQ2$-GHC^bt9C0tqbn(&-tcQ!~YHDYEM-^+j z+5A27q86r`pQhsbK^N1l3VFmGKbmemN+dSX&vd5{^iVa)biV`i@XH=k-k1jH+kH{E zdP0j2~apZ}U z&1!mt{iLmCu_1o;?QPa#pOwC$A-FA(s6;EXc^}@h#aMIECUap|Tg^q|*5JG0_U4lP z17P=U%%wabw*eQ;Wf!$0(k(QX&FzRjWJ7cL6_7^-lR~%d=87X=*R$NsRR#?szVM^D zYH7raS|iQX!?7N_I-4CY*+5Tbn(G)Y6FqV@JIUN>c6zgjSlO25y2x+%<6CCuA9&u@ zf@YWdb%?L>H8&mwd!OxQZg~~^VyzdLTi%`kKUmZ3dK_^{UC-=Z3h{SjO|$#z33z@H zv-|xVV#7wm<<`YHSbMWI-=M0J*|Q7mV#FYGw~=u~J2#jE>ZpmjFHzWk zq1kc{@jp*%4jOz3a(H77-v@g-G1eS@2ytY1x;gwJ;%1)#3Redz%xtajp2Zw78te09 zqB*MiFznNXo1+iI@6@Vlj;)V6ro>zG;N={3M+5WV+lA0i7-1fKcQNX|e&!Lq5Pu85 zFpo$>yw|6it#_&v>&pu?{6lqV)=cakv z@_gvwIE5P?E4*6Cyba%Rum|1E+t)!KqVAb@4roH$|ATqwfuD%;ZsxuErsxCjH}5Tn z`xMJE9~*jyShYUpW7D8#?R4f7&abeKdChzd|IIwssIxgM9d&2qbn}INw~+7jG+#`F zzBNrZUrxz@->ql9I_3fL`Zea8hhaA>r<)&Uz%SO|=7(9xS7xk}$!d9;A6w6lwR>WI z+7$cSH=NB+lVG>lB`Zgm-(Ln(4x8WSSozERDG&2lbjSRI-9Y}o)BK|Z z-oMsf^Uq!J@DGQ~zwk4AJ|l!w?1JhS{)gjgC>Zen@^bz?w_Au`XhabE&zopk#Ku@h{{Bi+%Mkz2kcgPz z%;Z6_mOmJvcZ~?OP9-EF{P%Y+`u{Js3#^>EAvAMCm?b>s4<6IOH6lF5FCfOw#jdfR zU2v48f0OcIej%YT5iWx)G0j6mqGO^RVq%B(_X`UN9p(@b6;!_I|MG{%j($ylKUJgk zfl(p;e=4|wxPGuDDkda48j`ki^KJF}XO#ZWG5;o!KO1j!iwKCd3efM*#BXx@TaB!v zem}votur@-XKsk{vue-3ub5q^UzmTO-|z3B@eIh^75*oRWcGxTTkImDLV`lV{X#9j zzqhtsNPs0g`cH0d*D*FGB-Cm+F;RYjv9h}U`}_QX2HJM=gGIzd+qH-a2o4Pij~!~) z!l(1^XKDItoSVfz#P1J`r1)P0T3G@kqWtVEF?O9Tfp#8#f3RTYzsE*dEG@gZ{U4^+ z8X6H1@%sS<{(40F7Or+3yV&{ue#qYFv`#W4@6(=KS%jP(8EJQLo9z_ zceejI6pQ5-`X~1K&v6lW=AS&T@IRgx6#+No}|IzyWLtBEPEdO_H362O4iu$A1`^PLpuy%j6=>HJQ0KdqHaKAs1=RcMq z3^V-`Y5qe$!y}>wXKo1kqp6noPkljLwnRZe1OI5c|9H>Hh|oWL&!YeN)X0danAo5{ zdgMQrBq|~n3ELmo;Xe#NDi#^l@744lqoOTQf8s9wA(rUSh{2i3;eYVBe+-O)|F$N~ zzn|wnfxg;EIq75;Z+WAH@o78PUHE+l-Qb+*P9fq~Y4|5d@@R}zi` zhfs`s3zxqKiryhHp%$0_Y0Q6=PHLad?S6liu0{X;Apyb2Ocap?273GXhg$xc#edw< zsl@*ufURSiAlasF$osT8woVei0pF2ipv=L`VCDL|Oh7#Q)n}3;lK1 z*zmt@^82aSw-^u`ZJkP}9|naWtl9;}{x#h0uX+9cK2nR&kf3mjwH~mOg=NAr{O=MF zU2$R5ABf6YKlKj@ibd`4x6b~z8*8lfmL)v)_cIpV5EA~1l>hCPVr#$HfZ#uvtG2yg zR1m7{KX`vrhlsF$6ZG$AtL+5+2(bLgy&bzK*`J)t$qNfNZ5~~wM1@(a%PvTK{FvLdr#WIn>FK zesG-skGXgIt@FzA#ORAeiMrn*4lf2`#a}5-?umA9;957$aD5u`@Z(Nuj2Lx^`=5$!cmMwdjuoe-u)JL8t1>b z>ES03&Yx2c(wY}}lTcCl`Rl%PzEi7$9QKm>UM4p6c=tOnTs^2s>%g2~_;^80cj@Jd zSm5zhr7{s9ms3igT`a6@FJ^Q1e=0i@(e;`_B+#Yy@uUd#w|hCCtb((zcSK_${0$qJ zwZVepr}_rgtlh$4z^ZMxHtL(upa_pM`uyT@{%CArtd0N31AaZ$HymLFKPC9IGu9gW z3ZM1x8#qM#OHQ%l7`}50(4IU?aMA8Gd*G=O(Z^IpA9g-NEFM&vVB~n#fAP{Q==bNj z{dUo>a-=nIsL9w}^v{vC2N9-jCTKh+P&-e;&8{yE!8On^nG{i9wyawlS&YZR6~DFEXKC5=`DO$@xJHw^sp$~ z=2O`?H<}Av_{5RvBwc!*#^QB2KDI1l(J}PLo;s|rehAw`If7(tC39-37$&6+iVA&- z3=ZMG5BsnZlw&+SwkS9@0MDJT;otNG9yD)FOP-qI$(V5?+g)J@_Da_^Fipo$3W%q_BiX+zBGk9|PxFhU8y#scab(IGnpzq~=EdxeR zPu@KVIZJv^NKNg%$?iX?5XTih7oNA_8@7Yl>*?cJfPi4^k&Jk7KAcrKe}Mlzj;#YJprT6&%U7o1ivL& zeyvM(dcBtP+Z!-DZNTmh`K>n(R<@HEsdNBBusx~l)RG@1tv0oK-K4ddd?E-EQFA@J zJuycH?lu%Ky(h`T+BdM7ZX}k~aEKeQ1uvr z&UEys2~hx;ZznDO)I=ZEPEF=u#+`$>Yy_K~*7I6(pc4yZda4(L%#SGABV~!eZX= z_cA;TZ&O$9$~LGcZ$ICTWb8WrY~zmb*2!n~{Etn*fB;<-d@;n@QQX+MM9M3-z-#!%#GkdJ-%=)s+*w43JY zeox(Lc4}J`#X3p1)$h*F&nN7u1Z@AEPRA%dOIn`33+on?G%z7_caoWF^Z4g#Ko3)t z%|KQ=^!4cR5uuKcj&`KYiF{SBi335&2qy1u!^qf$W1&EHYTHoLSAiJ6)AWYHy*V)v zFr>o|pt9p|;JY9KbVy}JQQ<31Lq4xOk~<543FC%~!- z_$7Uwfd;eDhdzs{=lW`^4-Idx_Iz#!ryY;oi;e57T5shr4Xoi= z_;-O=fGD=n=Cfyn)X~(z||-4%`xiYY75p$wZxo4qw24yc)X} zyH$XO*3W*oj!nR|a_B@eJQCkWR4H>u)vT2n7cC>x^sn7k!kxj&Cjh)^8;m0epgsc^ zoRT!XbGdsLw-~`__qaI0_-BksI%o@nu^yRv05J!4lm^{Jc%hLdm24exbPNr;kxV6Zb54DWV&?4#BZzWYMF#J7UW zC{ID~2u@q@ZjA%rHb%~2;w~gVGAfa9?j;Ex>q&BTn5>&>WRE94N__x8U)L)_U&6c3 zf{>R@ylh**oG zcnq-shIXT-zR$s39~VH#GyrDbaoxVU_N*QEdQW`P+!GUW5^l*5c;V{>hH=BWW(LnQ z1Ha`wHiO}(;mHE>1_pLoRhRHyG0YJ8pHdDrm$Q0hy&t#U`>NKcA3X5=2-t~z%l5^; zU`7@U9@ajnd?N4vYrEfxuck1@8RxIKMI81SKD#Jh#H+A6EVn9<=5u%Jz&!*Pv_EXA zAR7eo(pw}|7txkcr2?yHFawda(tB}4aA<9U$rNXqh$Y$w6O|sl2%!B8 z2&e;Q=jDJ#z>UK%66zvxQ;z^Uc%Q++j0}!Eb|)WF3#(qD$tJv)RqGJZbp``t z7CORmM__pQ(H}*Q`rt|*anKbbKt^=6f3*(fusmE5PzRw@)H@J4&bLxO%%*5Z6NH=f zag~(kmOC1W^5;Iv=b(r=DEU$vtDrcb(wWr-!zZ;a6uaQpg~^Fng;&-lZ$=Ile)-U3 zb?Q`^b!yOQMZ%x-;K3^IfZLA5@Y*njWNJ@iaU4&?lAS|9ys<@45ec2#HtYpEa{kUQ zBEF`zZOpm%I+ga5dUXXd)PPFv{pDH@RI8gHu%O?qg6zR63Zus6CO(`^=&uR}5++_+ zuDYQ1u(>y>a3OikRf6RrbPT@8Ba-;TT zqw=L9scE=E#Ax2OrmK#q4-+gA&0M@Z8+AsPcEJ~NSm*GfnqRw*am+@T!j5|QUQd6WYY&-=zMq`0Vds1AYxnpiE; zVGV0;kf-R;RKpKF@(Jm!}O3A3`ia?s;2V#zNqr z2&01BBRf#`QUd^`FVz0D2Qm<-k#hkgWXW6to__u=S3#rNLpq1aN!&a`+IoKQBbwtF z1}@C&W??i6=OZ|+V%rh`V7z0fl^eayjq1n+;w|G0Eq27&$ny{7{ zeO%7k#o&U?6+Li)jmlz5jG*xVAwRArb33n<~Q2#J1grr5mHb@4d$s(JTiXRALYK=@vl^RPX>m+CCF5smNn%xY&_h1 z$wsRWUC3OO`vfO3GZ-|qqe|l9>mUuacj^nXLl@->mE?e%+|G!Bk3P96iv~cii!UR{{hpZTXH5j8{^ugjYw* z=I?OuwGMm$_Bwb0{-Fkcr*P%wBL`N^U zRV&5)n=2{jEgb;wh8&ejV|K3-|1hXyUGB7Jy#ckQXYfjh9(Ft zV`%HZ1suotXz1mcFKc_kv~@kmBUJ_kBRYv>hg$O{@{7QN*sB>vt_=1~aN;-?S!aR_ zqL6XFlk)Q~o50n3?)~CTYFG!S;X#CSd@aRBA0a*u zmMn@=6P}xx*3BRP?yuxxMhwnAn1;yi1>0&mxa`|(hX@W4FS+Ps!4^@x0Lu?H0OF7# zE`!88XcqsK?N|II@L;6R|A^UumTZ}A0Stn|Hvm(%pa9Za3RS=sd59liKmT-K=-16y z2G?)I^2{Q-PM*Y33mde4vqBn@yLE~;5O~_nt>oJLS8e^f#(&ng+xWY?vlWE!bzj!O zeS5+*3RJ|)1rtuC>|~yJP>0E&lcb^LA=l&b5R`b)MBMCS1_RY$G+u=CdT{_Iw$GDJ zfQuqRbnA8ALV@J;^yAdY((Hx`)Mfi|Dg}%h)ecqirxJn=nr>+`m1)XFadAqJ{cnr4Y8`r3KvWVW zw6OXaW-*Y6ckxVRFvbpC9d}wtBx3XP!4mvT^B`E4LZ`SDQ>|Evq4`#g2OdI`p@P1t z6k5n1bxnGb`Q&~>Mu7}qR>cpl+c-*3OST0ZWl^0_NrljuCg)p&j}h#_LSGM=W&5;V z`(}XQn_V>SnV6&t=7*drEE>26hMKtXan%ZN9cSWJFii=3hkA9Rp)Y8!Sz$Z$!z{u4 z_9E2-h@w}*fp<|7x1^bHs9Gt(angA=Lwu!kxvDY?#^*711+Cs%PBnJTX(-*mcD4Hn zlICD1MYY!}+k_tj1(@{RZ^4gN07F;tn(_FDbellYPklkPy8A6o8PDDA3DvX|j4RH6 zvH;O3yht)MZ%8F;J+VqvCVbx2P*;Hb&}X+PqFSouh zF<_@O{hqKLz6^10_!48$hT|ROrCh(oZ zHH;W4()kIa5dq@m^$Q&A>q}14GU`AEVw%pw#D@-e;iHV_K0T#@D81~1fe=WD$>3m@ zFfkD9H4ltWXd_E70Pum1HB156#w1G~tJ^9!5T31KG^R-0gY z|2Tr`c`*bI)X$O{2y)SrTJl7PKs2SoPavKFPRL4LT*kYIE8NHxe@eNOFf=}s5(aTT z!zV!D4Sl&hC_If}C{EmI3gr}esT?+3cnRyigj)zh;xh|j5K}3YAA0Baw2W_h2}jH@Ob9t=nCA!|S7w$zo3W>1P5ZNi z;!23QiNl`V(=J>|F=m*HJq>T(N9KGSGIn6vtKzS3W|VS$b+UUxcGhDn_JqLWC&KPw z=B*9`$$P59AakD4Fu?p*Gz|7FcyL08jBLfoPYP!QNJL$*er+1jaIQoRAAV_GlJZ7j zJ-;NpR#@8{$(&CfEgws@2C{PW1|6t!#N#rEH2=MQj7uO&9*00IIoloxnZNI&f$=zA zL!F6jF*-4M6cg`h$~aA-#;iXbNh38mcGKncIl2gMHYCbI+OQ3%sCgPD?rc0~VJ|p; zixcg7AzID0$J~Dj@-Z=uQAccD{Dc{EZKq5ltAk@QBl{`y(D}o;MqSAU)32G_U$7L= zj)CG|oo8^RM&%r&gMUVCdfrfPAjN7OCN>)3bVy8K$~1(ULXz2(bWH|3K1o*q>36dQ z_w-R6e1;^-Op2>BWwuYhvunugsQE8@_~|L;+ra$N?!U)x8<@RjV%34nW1t&j&)tT+ z^{@rE1Nfr!=AUjiV0^@AVC?E5+qC3@o3Cv=&zpJ!shuh&YaTOm8oc<4X}7p9nn|#Z z-k3{lMlvQc4;GDg5MKTgHlVf&O)0x<;qq_QBY0VPI@iYIR zW`RuS^cws zzAGJb-nf2(?4N%uW223j84YWj_2M)C#zWbTja?L?3ujD|K(}_JMum{CWg*GY+VPgczPp^N za1%{CNk<1npUx+rQkQ9xXHnBz?I5K^M-zAz4rp@OH{ghtY0 z5>q+wK9?k*aH#LXXl}RY2b=$8F*l_K{b5ac;h6sCLU4EqrXgQ`AQ%FD<`CyI%ZQ&Z z@dIOF@Z&sxOvAwDCop5$PAgK23Vs3E(IKfTy$BGW4`x>Uw6&mzy}{~mm1dO67y-(+ z<*c#9S+ng1oluMkzKE`z8-TNWR(ilsJ(5eGIeMi)XB<$}WjeF!Y=dV%Do0*i`di^WH~ASkg;IFrNY23fHIZCVm^>^%9_ZYV z2c2OP4ts_~@ggaOIFCyLuHEU%GRZbdp9M%!<5Z&E4^FWwaE2_gcq$oWVMK-_; ziX!a&T)ToqsU5iqQ3wwqgC*H{o6j!_7|GD}L=+jox#Y!Xb!W z&v}c2CoQ#0XHKB4l5bFU&^jqcqZ+@n$1xl- zfFw`Ry&kaH5~Crq1CVu7Q27w?&- z9*V-3Nj{XOFWNhfG=WhRj?<4iTNTE62%|3afz${?zAMhLV~(r35C`W8T)XfqsMV>5Shs+5shfyW00tL zVt-V?U?xN2c_W%fEyl4`kVQtNRIm!)YKfF61YUx&D7Yh#lqJJ+)8>hc0=K!nqJUmr z6MJD4Om0T7C=4TVf<@sd$qE*QE6ryc1?JL;ML`{A+EsECDB=`K(CYZyB_r8R#PbO2~y~gEfZ` z`a9Jm#A83|yv1Y3g_pgDgcnTOVUyLh!7*#hPuOun>^%-L?8CAszx%70vqUE|lg2i7 zmVxi7`iZsV9(Z(A6R$3}5@K~L)p40=J-Dq%Vu8&Jq=d|SOgmZ#92!bX_A!F9< zjJ07vMF)<^3xYdoHtl1mil60Q{{`q4S;q_6KprgIxxTuxDiUKk2=m4~9d`MD28 zi;4Tg?14_b83;X`6}r4f6a^8XUZU+Kha9S_1okJXff$dwg@GJ^lNSTnMER6Eop2LUE_lXz3?1dm zaz?cuk~0c^u%7y(9Cp%J-Ep?To_IEel-fWs8aDhRE1I_oj#oytSl)l8hF^K}{4##! za7Q24zV0KjLoHeTc)8%NWDYw-YY!-+oD00qlaNPE4L*5=vP*1(-@{gSTytj!9;KrA z>44>uj0%y*@Kxs44V%jem1I)ahCsN3Rt^blUz7m)uz5gNLEQ(Pv6sYs1O6A{ztM(l zPv0DxWW_NftL;&SDlN{|U^da3x=R&x@{jyZl;cDfOxq%X3zGCweL%>8n>4F5J444I z4_|f|vq={LBz4TDio}$#Bf~u&eykGRj8uKy8bvta<(-$_S4e=?frkn^S2w$&@lHB^ z2xIVKa*)`B2~nqYSUdnlSRf90#Uzk>xD4RzqVudnuNhCBvt|psXi|f(;IrIlve#Yu z815dnlsSO1?s{Q}ysR=|09OVQs6jKQ*4DlBeq(tWMH4AeY$Inee8_wkKbcT%i{6sS z!aBY;UYud$e8Zp~!e~4&xkX`^=9lq~r2A#ZiiMvxj*fIB+`|yN%X;;gB?`i@B&Xh? zj}LVbiwGhj>L_ z=!6}mBx|R5TM7k-4d9{=IIslayLZ~hf>ZW2%io5BPx?-8DbY0EY-U;!tJ)WQ$jrno z#JCWSf&^CI}8~NTlDvR0^S{(FfDcZ78p-H|7t`m1Dx}eVrGwV_`X~a1QgtH$}^KK z#DPmcgFqIBS+HvN_i)`;hyGc7q5&}sBIv=XzxE0m&*nDnO02>_^RcuH`{hZ`tA3_? zbv6N&WT;5JhTk~A^Nz|RNg1{Z6Umi#Uvo}Wc=`0O7*AJuV?xoq?$D$TynK~Cuh~#k zKUt96F>p4LclU39{pX2h6*3-m%-3M*5F~e2mKPo-GmKn_n)TJiCrCq%OnIgRLHAj= zxBKn3*g{>6gWHJ-E(#s_Ws6m$Uf2@N!b9~Fi3#3P7C34f4(m$ky2KoV0}7}zW$1h_ zSRnDoZP$0d#g5CC#B`m_8RcU!8~eAv{_kS&O>S{`qvJ zo;3PY)_jHhTh&?{R1jp8@*n67ZkMvIp$M3CRn^ zD&Y)1*1o-fd&PJb9E7>UIKrZgw_2dULA}xf3KNl}abc+N#>i8Y89ET#F)Z0+p>V4XOEA*y!bMcbjZ&1wMytP(yk~o7;cbm*-mI*5kQ!G~ zSpqLl8q-c9jtWan%7hZyy-s~ygpI3Uxa!F^&P*4Radbsi0o;~U+cvq*HK0+3fT7pm zy&^DJCLR%Q2J;gWAA__b-)C#BhNv!Zb*Mq2K`UTkz~_OkfnSDPK{cie!$KjzPJIhs ziF}H9FiK`lrZKnV`E1g}G0$`;bLdVZ!KbN;-RxlucbX74aZVc1V?bCWC$qz!^G!Kqz+3<&cOO)WM9 zRq48wb)+(3+DbhlSTuiAWEHvPlDP+hGSZv6&o~2nKr$s{G=nD6x#Agi-Ec2>u23Jz zJGV_N9q{m0@%jiM0)HkISE2~U0XU{H*JacrgWADh1F`;lc-)T*EXrbjXY7LoI z8X*Ig)Y7E1P@rMD1F6#3nH6~nx|W5w7R^JPT}e|=^HS|$H7?|%h-4O!W*W*5%`z@m zVNa~X5n@5cQT#EvH$#{5HHlEkeaK>V_iP5up4RhB8Y?qkehQt7uK`RIZ5j*|isQ65 z3U^XtR>Gf#Lm+WQ1w#PO@5hv@2(p1_W=#RWAozI-99O)+^Snk~FR1&JkX^_c=4?Z@ zh$1hejDZEy$mo(!S|KjI@iFW8d%J&zH)T#9p6>2ncM{S{{MKM{{jOg%E~Q7wABd$f zbcFvPtc!H~zz>Ztl5FFqIwB}fi;#K^GSp{|4}pF6EWLv$j`zb39=7(V{W!A-5wX?B z9Y>Gb>y-{P^;){w2CQ{gXy2A>5C2Z0@T(A16BjAZyyc0+$TuW?LRAD=%_^YT1ga7v z&wLNej_^bv39rc)YKU^zsCve=&*4Ajil8veq!eAWdydbvmo#U3npuKEbQkSg!2K(< zX0C}Eey6a#0SwG7!OwQ&+%u-02_N`3WBoaD6~6t^r8x|`ehPF?d?TM%X(H4-sP2ZQVobobFn zNS_x$KJ_Mw5H#@IirS_}hK*dAV_p+0{2Jzs93>z4=g`WfWmZL#gjuFhfOsc(84Cyh z+znpC^Swnim_)Cfoy&iqh5hl8EBA%IGN<0EWLLu7QL&s2c8kUTi?JoSX`0Mr4(FTqNONI4$9Yfh5Oql#lKX;p zArUCP7vD?9iH6(~W}x8h`2laabL4mwvn;qy-kRiIztW?(w)YORo8aH3(q2D}={5XL zl=gdHYw0|n!=Z&tisOtE3%#x+viIjBW+!UU#M4a9e8Us&0`Bw)m`b!NA>}@z;pk3T zeWN@exvIu9Lx9QCn>PZ1&*lP$Li_35V}^Y0!-`a|MS2kszAP08m@z6uFj`Vwe881U zm_!5|*ap1S5aG)lU|AW*jpucf-hY20tMLa3g(TLSY4^pK+2Qj>>rtE+oFAbxB znw=<&IXnP|lS9op4_u@WDKen(+GYpFks^hVpe-=Z-TrX1H`YkU-#4Pg*6!-yXK2%0$*2BOk6x1UVw3AmC<5wU=_ znoqE>b4?>y*kr#}$lwYb*B=+fH){n+$Oe*4jW2+w+x=~yZ4YbP+#FF4y!1*G&*a#2 zQ?)4`+b)EJFsYNj)}lrms7sDdpfc2TDC%uu$u%w;*x4l`C{hz>ji~Bz zR@B1*ovXe>MGY_8h9ak$X=eyc5%iZR;RNd)Vv0McQj;zhjMC4@Xj`K+b=6}2$TLdA z0FqlJeDbD<9Yy`Wov{FA5Rv4m^1Ez_#j60EQ(*J+@B#oW<{?r1;1(EFZ9H}4eB_?7 zqr+ZfMRPkO+JkC~db-jnNLw7zu;zaH9U(sQzBl1qkuC#d!lt<9lBZEquaSJ8uuzy` zE1^HPH==a2z7&4|lk_Kb2XL&9r&_hsIz&O& zhz<{~AVDbu_K{y&99*_6H1pRR4|$tR+GUp6)6=o zP?tK@$r<3kjr~UYSFeb4_;y`Lyj5)aNwkRL)Ln}33(Tm~-(IhEP*m<01MJdki&N@^ ziCqv+JsQ=ODG0;x%73;ffdr_0m~sO~$%yC4B#5cNUfPs14toQY+)Cl?h#6SM6FV@1 z`H8ttpt7{BQhTl{IH~qj1L{ttQ)irU0(rW=-QNbFJUwO{m9L(GbD)31q%y2x&b*YO=QveEDyAx|~@gP@V=Axd^uJZX?bmx+$#g+&rp z#La3rf;hlbnrReCsJM7nO~_zlci zrwq=f+ui*Zli6;8uO|^Q$T(vl;T`}J-Dqc#T%li|!vV*!g`ON+#(V;B5uisSwwDTJ zI=b9IK1+I@k)X-6aOUU=L0sJ1WrOw#(~{S++a{aFkHKU9+AIzT0kWx8%_!sTz!!gq(xRnr78Bq=rpwr%9Fx z@HxHgbZ?_zHjTlP_}iZ>d89kCAl8REL27$q(8Z{Ulk|#=L`_+n_?cr)@im0g`kMhP z%NXYtHlpUWth$z|&$cynlb&T;-<8(OGXEN|vwxj8#I08LQTy@<` zj!oTI2v0`=p3^3NQp2a`v+~mQ&+*bSe|;b6LXet@97&_~4cJ=8$$@!lCC_N?-PC(? zdm@=L_vLo7R70AuMh~G6%5JR4Jz|T-ZTI0a#A$w1O+Q*}HTv64et7q`c_AKFwx!i3 z937L%I*Li?%W;2+&3ecT0F-O|Cuwae>(rgFG+Zdmj)qliO>#9df0 z4xm(KkXMAWZB>?t^yTE;POY{k-lvsDuAcf;`1K1ZDsP%5n=Eg891nnu#5jox)h`E| zu=x`88P5d>e&?;T3Y&=^g74j za&Km&k1C{d&ks%<60E1W(V9L%Xt2;36WJ8j=Sy!be0t~c+WpnlI}h$WT!R-nwc$AL zDwT?>IhZ9%a)0~l|9XW%_<#HB|E7ZcCkW`kPwG}*t>779ltMQ_Y7`qlEUKu~@X81= zsAnX|imWmm-fuz&kV?QA-oBPh+`_l?7;Z}jI=ZSN0ev%>co(0$y9pwzE=Sg71H3H; z-0EzQ*;NI>bg65OPI;Fb{o&^CPRzlb+mM?WpRAHtk+Wxx+qP3Z6pe@8(k0``Fr;sd znwt%J!Zw%S!~Fg*XMU6DyUX^d2!LCQ0*oM0! zH=!8a0{^A*a5AH@7Yqkawkiz6KrxFA7%8C8znVM+OH{@HVDya_8hs*qp>$51!v;pp z@|@Jk=uDozz)Y?tp)*;3!I{MD#O&yuctUm#MMWxI4ErnU!THh8Jmwgu|D_or-WClc`FH}2-PKY>6Cr$c$koylkRfOb578mik#G=&3c>o0!dSy0 zP!@I~GW?-hh)UvTRSh%}u`obXIyv?bEMEu4S{e#jBE9L}k@1Hu^tu(rd;iS3IEc=J z!?8v8AQ4*uifJ`?>@@4kjb!F#0Qh;(*|d2Q@+&&B&Y>q=UtBM-tG3%%9WWii8@6$1|c}qvkY`ra+Hc zipR*{!+44qpnZ?~rb1=tGxs*^D)iyTQz7I5+}vK2E6Zb#ahEiLmSSTax67x|qvPg_ z6cMF^i`BHu6wY>!YKbdZq}}8}tZo8N;70`uxHm1%(6AgOB7u^S{+OdRH8@KT-5wWi zEzNXHWu{HoBotk3KX`OX%o=E%eQjdqbYQj7+S&cKRC|~uH>=1R0j4YJVjfsEDfVK9 z_xo$`QZNs6TMbv3EpF(RSdTb$BbLq?_C?v_AIEgEP~HhGbj&6RW-eo`+(T~%*5Ii6 zE%fm*L)J9zi+XRV69pfZiuHhyLTmJ0moTQH?py3B_H2ON3}$!${^AxcEJ2oR)Ho9 zW1fmx_hCG#nJWg*t82)o7XxtclV2fP4>?4l%r^Hw5$|HKedIznYt1Q1WA=AUw(ezm zg*eavOHxQFr$pd*5mNc4>ysi4cu5oBiEx2EP`0--*pQZ&o(T-FtUw2ZI@OS4)z>zZ zjrn;7A>6)j_Fx{sjK$a}>Ga^1PM0lyC;j*SEx!uil_-FhfA?200~$x3 z%(-Op7GVyHlu@rDSHO_(5A$jMlHrtn>W|JzTd**ikVvcDn1+hsmi4xCM2r5b)RFS^Nn9(sK1atX0`|^iO8mtwiiyP3OluId&7DQO%?t(&{&C zEyjFp=|#-9mbPT|37^LA908RH9kd`ce^V6|UvPeJy}r{JkyI(Q{ys`DApGisg|#(! zYu$hJFuDEyb@SOog3PayS-r+fBW0uU&Po`~bY+tZM7;wdlSH3n)Y5})16;t%_d1pK zlX|tgM&DP+vLI04%G%1PDP+2JRWoyWn?R9_WMs$D)Tc(fs zviFL9HbtMgMq-J0;laO~VrOWpE&nd-golSO4%l?EwJ$IQ-_;jVDYp?E!iy}5x8^|Q zVf(GzCi>F+EO-kt zV4nwr!NEfoGZ^4f${uoOy`^61u7~?9dwNTJ}9JjXY@*_>}98h5GqJw_6jM5)546I!PU3aR0eEw z*)V;L(Nv>+pwRB;oNTX!bl~Vhb-@T(U=*Bbs42vG>#ESr;mXRRfU}7<+STqq)@1>r zP7U51hH6BNe0Jo>HJJ+8YBwMrmI&OZ4PW5rN)j>~fdgf<_%dnHn8^Ompk_SR1i>Jh z+uLy|5d*lqmhO-q!52Vwth2Q~GkJ3sI%)iQSKMui$AT6A5Ge{OP}`{&Llqtkbhlm? z#hz9BSr0WD@}5G;H_GGeE$|$;OV!pB)Xhy< zj*s_Gg(Zh$Gz#FpC7Cy@iqg(t&`XXAOL}oIxx)9(BkFb2Dd`3*!KQKz%^k3ys0Jv1 z=wo9qog7;h|2*Fpk1AE|>8r7SE9<7pQeTOx%G1>MkG>>Kj?o(X3ToG$cnYrJH%;F_ z)hg2>us(tY^e}}74X-vCkLHB;(=^bBP}RoIWi;9YXRfQmf0>X$Gmw|2{ z5tSkTK2=cX{|yxIRJGgP zQZLZ#DdSnz6EaR=-cUv8h$>_ z8zO2;9)XydpK}QJKHJw<>ZqfEgY)7Wan_>R`)E8BXXrUSVEoV2Ct>u>&g?Prmqf0$ z)#Zf_%c}80+nYSf!Oe|RMc{moYb7wy0YemGj+s}2{wi2GJg=h8dw>$8NWR^ueaLi5 zYqf27$3Qjq5%MsAd=F@@-W1!m!Jh%-$!8T^sc+VCn9$|c)# zUq8f^HMLtkEp-ec1DJp4b$6KE0s(0nT0q>M5yo>krRj64=Jom$F)YFN$-ZO7XlZ{`;7 z2kqhP0=UY06WVE7;hbE?QJ?yGf4jZbDv~7MdDz+}KLdLTbF+F0CU_)0InR`z4nVno z5x$?wF;6TbL0qm^$^JzY*;K{v=td~W(?lGpJP9SOZk4qgpPqs~wnkZ>k51D1Kg2IAvJH$3@3^w_x8R0@d+mRmd;fB{U~h(#-I_3CG( z>-*|wrHlLO=jB*FFU4{aRjgI`wZ4F&q&bH}^s7~5E^O4yNzRo(E-!)?cgH`0($$L6 zbdKRF1R_F$2Qd%WJr4vsV>NCx7P+bh5&e!s)z&KTt{7I z^=6IeIFqa`uxDrY2yB1!{v#b-ljT69P4j*4}d&p!eoWaDy-~E-$ye?vPAk<+CMfcB$L1*l{fqflx1(qW^ z`V$nrVwqMbCB%s0t~uR1cK;RD9gdKa_l+tR=xo%p+qkU2H5vw~2K1z6L6I(<3DvhN zC}<8pS&^p$hkxvGjmp`*oUYdqIW?HNu$Ii2F~yL&GbYm`UFG*gYR;tzvuQa7-+=46 zvb-3vC5Wt1hvw@E?7=AX+R~>ca2;*EpZH69@>7Ph!>o`J`-owm5oqsDJoZeK=y`GTJH<)Hfmq#=Zlh zcWl(RaZXtIfF8dUV<#|V59DN7zDMHon_8qiY*uf;zDi~7My=gPu?Q$OkvARdGS{xK zbf+kh!!QkUPhn7}a*kE_u_K(U>O$FLvA!^4MX*iUfn1o z%76}nLROJZR2}@vS|5@1z#2(MA%jAN80+6HSyVz`jIz6IFt0vEs=p9?uRaTG=$ToM zvbq4%_2lmR*-uTmtKp!tAwcZh6~v8w<=hEq*zUtQfQEe+3Fge#CycLdRv+WA=ISUe znM&9$IgmWE@Sx`-%M}^|$7g|t%puT>o@u}4Zp!T=(=auu6eFBibXP}_*1o|GK)1b} zllXj}1QwRJ+pj*)>)|2l* zS(r17UZ>@KO-!x!>oD^6k`LJUIA-D$UC%3>jR70X)FQO2Dzyot*hmE-h{vuPQ3xu} zBvjVxJ({S*`3=k=1Zzp)Y~x!QFxsf$TZFFq8Yxo{%^RV-^kscb`+d@^iW9o)JnfF`Wj*5#R@y_w`Ra1wQQk9jQ8n^_DF5vg+d2 z0XJLGlZMRUEw8XF+3;udx8!IGH06$+LSK@S#z3!Z%inUyc6qC zX~W5Z4of)RRm~gj#Z6zEuQj&evW*(x(BZSVoVa(25R~SO5x4G;=^WMb@MTTQ+k}9; zvHP1|1tlMSu*`wwyNWe9svQqit9<~59zLht3 z__e}QIe`C|7j2i5j*I8_pR#Hj3O8+-7yE-9@W&@1!NVXGC(CDj7&YdQ z)DylDM&u}-)%bF&irnNIb`u*cUSlbfPzIHT%B zp&>$2U7btBjGMhRQxI-ojZUWE=w40_L1YVfSO%IGxe1PfIezoUHa3Q>%0zgrYr`Fm1ZC?!&M+-;y z)*^^@tJ;^8I4etc#V1#2$0QCHCN-nwv5K*r$ z+Mo5M2X))v0OhGEoTG1)II_~H(*Ge>ogj)Zyq!?{!+0kvUD)2UT@zeFurch8b0UVawFHps?AYWoRgIUT9X~{uMUPTDS|F{s*vY7xwS; z#D%R!SX>KXa^H(1=B-eXV}QJcycmTDJY~jUJ8W5?7HtqRqZ_-i%y&f}Fv+(L>SGBA zbWyfEIwHC>O{d7hg&0S^bHz|ACJQJs<=No~K`MkgW>z1@L%c`o5>*H=;z2Eh33^fs zF}x&U&c#h6q`9!kMd&9b8 zHek*M(lL!X^Qm%=BdJpcxDd(?)8>l)3wI(`79GnUh zZQXh(E3KrY{%B!G;-uwlapTwf-N*xV#)Gcz{tNoT#ht7Fcex?~L^#||t%;GObHcQH z!VuBEwd2em5UH5#xkvXqI7{uYVhesyK{8cyd$CAeWF3H~4JC0c5DhWQp+JWcjg)pg zKe3$Y(5x*!6KAVz|FNsv;^g^MRLc7WfT zpfqK3&dOF`Frw1*&qBo1{$tU|k|b)>C>>GJqda9oD5dNI6b%|ZiaM|;%dm~JTMqsq5e?LYzG*Wpf1D9+9fg46H;RKJZbRf5Zi`=Ylk*yzKE5M9qOuXmeg7g*E zl$Kmj=#g*-?^yFRI|+r_FRDzj`GkT@Jg6|y3k8~(o)S?W%aKr3HV=U2yG_&dgpT2) zd8>?Nyn?lf8O!BiaGV{Rb~Fal0hYU_elH4W#q)VSYW8>OLy&@@Y_lh9Q_{{<$2ACp z9S`IeU(bT#H5Z(@*wiAxfSP?Mx{n&~%5+ePuEx^Tvjf%KYVkhNT z^5MaoY1J+#SCsb4i}4G@Otrolcr8w8vRn7|fiMd(FNd6VkkIA9OehL1DuuP&y1a?u z*v@&_XznDp7d{KHs3z|&_=Pm3Q~4y0d4S>FO@W4B>yd*(SW1&YN6$<(`}&p-;ph@l zB-D4m#X$}q!HFg6DJ2OSm{ewJBb_Pl>`WHU9Jw&qQyy$L5ruEyQMr_X#AByR6@%i~ zou@`|2~ykM*bE!;aR()L`nDKC%2(;wUE}95b8Q}d30W(L%1tI-4t82OD5IS1)VHm2 zwjA^T8AAeut;P&2dI;L@+EWyV816@dF zm;*nhoJ`EpO%$D>qNvm+o1Q@J9k>Ul9%&f!29gZ=JahSMj#)_B8o@w^P3g2k;XFro zcw&XC;Mw;AuP`c;0nQ4WVZ($a?^zdMVXfgh-07hxh_L77D+dM?73L!e*q^P|8PWpD zuBAK1@WpD2`E`*H(miMD_W~z7_+l|!7oIXb@s^=*xLMi#EzS_0JPZKA)bj2EBOXAc zM%!e`3!VamLP2a3JC~#{5lg#!VCE%_fB7u`$C3ftAQlb`1K89ACzeA<;BPF|upvkG z^oeBkdOJ*+ri}r`p&$>z%x?Aw&nL+u@}Mx$V^0DpUNa89nNHLR=F5;f2LbzXdxDQ{&m>cucaWX%YE3 zE65F6X==`Za(t@=nuC)_?y6DS%sFN+*ux3GhYpL;4NoFteH~|BY@-@1IJH0B{WH9! zn$EDh``6TBGbLh!QNvxET$~<4N=Mza|QixHDkBc&9L1bbvikM;-_ z&Vo*G>GpqoXAMPT1~eL9cs=#jdzntcdy?!p=uPJBE=ISY-zDvrTKVBVN6!!x9T0s@ zkyL>GJ)*~hUdcy3Y5@sRfOU;n8*rbCz{)qM)>J=5sJvBFHs^z-&kMS{ko;2F{q7gZ zFAd}u-~lEIU=BKJ-RVSVzqeA+fi6>qk1C&racPmzydrVxWi8b_bIsS*@j$~N1T z(FiV0J)}C4u_KI(hX@cf^ozq_;6lneJ23SzoQ;hWQvRAuOg#nzBZ<665Bh4_XwQp( ztprEV^3RkaDP5D#z^sD#G3Sy54^}rWfO4hQc5Xw^dq^;js*ST?UO({JqQ*2nhngk% z1H;-1*P6e^Ur3kPTa?==)^pJmWyp0=}IV`ViUs%V*j{Du05QjE~Cze<>)H-%C@*@i9@ zueOjN)?yVMy_F=4mZ7VDo$!o@J(s@2NQkcNG)ibmazSuy!kB*rS0m;Y1M>^THtNPv zzUFu9{jH?kN7znP#OnNU9)WW-%w4pOn2PiH?LN%3OYYm^6lT~gzroyHs+Y45V1}3p zqnD5T?JV*~sQ`vWvIKkd=Dd*wuUB{f2QWt98(8tQQz_WiH?xo~c_UV@^!A-wG%q1u z{=uT4`O}=ZL&m^4Amlen?!xyA8>{*DR5%I5f9|dg_sdd((JS}L^4jCk-@f$m=bN7I#4QF|@5fax2R&&)acB`8LaSvM;24|z@BYxJo9c?#ONm## z?!drx=%cR|LliZTdkWBZ5$gY3APh z%O2Pm%>!;sdL$68IZl+bvlU(M(f9hL1O7B;#YadSJj{XOTLJ9_Y=e&Om;(<*op8)@ zOuOK8oW?j!A^<#bzx7$ij0E1^ z$;aTM`m}cVTj#{tQd+iu6$H45Upw##Umfh-=v#fpQos!59^D>ECY1G)JL1HS(Exr2 zj>Za@A${HV@@>F%)^D=<(DS6yPGAe6(V9LB^A&4iY9<;iZ-G6Od`^s^P3>QJpo+Do#{&|%1}DT6yWB{$TlKgwEPT7afx zN4QEHC;AC_=Dv{mpC3YCgpd&63q!!a`lO zi;T}mgGp2^6L@HZiouXt(KW^w&P}0g*{%W%5uUwS`3qNml>Om)N%Hjr?w&crnj0j>9V6xP9hK{kNM3nN`O(FW!rFI%>mQgnENtur-ExD4ObVSMU|Opz>O=?Gc5w+69M(cFZt2SMO%yr?xSUI?C(1`qV4 zsLL&fAOtM+@*-axzTv0S?f|DWENGl37Sv`h#3A^SUK)bpO)(|fLgqQE!3N|L@OW>x zNwtI*G3>G-P9P`9VG@FHE=5QdmH6njMD4U8MN00%F;1r#UF7m!aiQEiE$SkTKus>$ z0>HWiulJ1%e800!g+ub;?sv~$V1iQ~QluPUB=%nC_qK-$UL4}~A{K(!MfVYDG3OWF zJ!2_iMD8AO&3Ln8RND&;%rB%{M%s>Q$C4KZ;}5w97d(*c%?g3eHOrTc((ls0durh< zgFfvI*xj>`v7Yh(yRcW;r08WGdT`V$%4H1c&qY_!Er~u6>p`+YraN=ZLb}T&ag#eW z0t({CizkOGShRynoys=|?rDm$DKjjW>%Rb8bWi8gy^yi>|gi7Ma4S%J;KTPhADwarba4Uw-LpJhlaZwb^zX*FYh z%YiE-yyT$q6_q{GtVod?I{3g0h-e>CV=Gsgh|f4&*E_r4O3a>yZ0Wp%r2CVL@O^`p zsB>K$5aDnbB-O6i(s6_1#=M}o&>@5Iu`X*yXN3tsIfSL*Bdwl(M#mVk@Ti+U)yK+& zv_%M+GdYB`2k!P1ScZ_cKb4G-kQqfW3ho}360E*+D?mYVqm_Z=DgKW(Cvyn)*A{IM zv=P5V&Mm2RhO*tc@p(|k!(f$&E-l^2dxNRLev7k3attl;g-vf2Xe$Eb# z0qPcYpY;Y3qXjuLfKWZALxytj&Xftj2x)!lPO||zrc}9@84^C@4g&8P^{&-x3zN|L zn1dOGc|h%cE1I}MvJ)XYU9u>ZZ;Kbcewr$KsX;ReLi4t1ygF_l?lA}hoWMvBjOjLH z2d)=lS08j7VqVbTE0OC-TExgOUY-Pa72~0Vt3O<^I^cZx z0tM6Ot8M~NBBe?#6PM*ZJ3&P1Qi=_y*eFRP(?g&daN=%l%DfRFYZzqEFI&`e#w%d( z-h~X{^?UFN0vpzp($UxqqY*+b#-%%-20hgK@4;Tu~2a9Iqcu~f;opsH^>7LKtf;@z&1C~8Fs;+r3pjfUfc z3oCdAc=kMFf(GkT1*iI_k`RIeHCH;Q&;P!#&w>uUg<;haL#bprpe*A98g#37XKab0=h;k-f}EZK8HYV%nAM)r}?l zW@c<+9D?r3eQ!PN9;PQR1jP-YV2~q^J#NzDzCcP@a&VXK~TwKWD|LEUk)Yvg`O(YzW3FSNztL zD2WqW6BbB3RJQcO`~*2-y6|=kaOxvY5~IzZ;*qg2zI+fM+2Xx{_dN{a7!;js=w40$ z2OhE>SC^UCm4JMVQA~>1s&t*Pf~_T{A=r*SK*ozi^I72vg@7;%XbtIcyUf<8&N@M0 z`N1k>C+F?qJRwG`^wu|||5J|;;30dKJ_8|e`yYv2E~M$(k5V^5%S{Yj`Vd6tfe1V+ zuB#zNR$2}LK0#odtn>{EfkI+c&`-5ghqRwsaVnzpK5I0+FCT=U`n?p@jyY9&zLkSz z2#0rFjO8#)Rr04=mpn^#a2sJ!=lX034_Gy_ebYAU_h%vi z-+S+_4On5RbA0-AyK(is_tvat#js#t=C1{@^32oX1xZC{5Y7%lwu5(mVFmY$+5Pk= zA{n+zQ>I8H7JyDoy1jhN8TvWrv~eMe{^N*V(1D5A4Z%F*lw5FjPr@g!2T=f?Cf3tG z*FCuag&2$OKdvEfQI&~h_=eKC6SXYm9ZnUkSSAu|uu^z~7{$NYc<3yx+$9V!eJH4d1kg(yBZX(*PzBpwkGrCg5nfV zXd;R@4;OYl2uCI>!pCJi!YN8)g*EhrtboW4k^@}D*pR6nT(vQzA+1lj)_iBeb&Fo= zU2LVmg>;t*ppMaHUR}k-Q&|fF){E-ZPvZH=-tr(@*avH{V|F(sbqZ;cqXmP^PkP4T z*X-DgkOjK^38q(rj~-Y=Dk)%cgng0f9}|cn(Q0@pXn#sI5ZJsR4&djX*xVctjZ-vpKA3IhgcJ(>a$B{o&jnWe@|IKgyb)k`Wp6G~N-s96?^t zui?^DG=mJv1ajE?sHge-5O~Dvi@HvDo2n!T1G^v2fz&lpL1-tShB=^QW&=tashHiJ zg`QfK_Eyp5LK|i&Bzn+%nNw1X5V{~H?3j)QdIcoS2~;~@@?hXyoPCf&4&&t%L2I3i zwfD-0oz9af22vxk1R)(?a9|?bd2Ws&&?aO=bTH{shd`dzevPoHP82~L`SrLA1(E@y z?BXp3;Urac?@)GwOoo!2e#9i1n8e)`W0dS6x3^}N*w!#uX7_#@F|nFFd}On+u1hg- zI+=t)kFf?&`O0p4c74P$a{q0N43M98$ZH72?Vwj=BxkQ@^S z`DI48`-MFY1Eb0Sy#mg5L^}*}-Yg6=Z!nOUS<;z(<9jjmGQ)aZ@~t=VNo{PN^SYG- z!l>g>K;5x&@A@}6}U}Q$QxJGd^pCYsP$1q z&`;iEq&>6!-wIjNf6a(}fZY+cNJ070GKj?nBHKhZ5Q~iOgJX2};GUFc!7f74_jMoc zK2W_$J~?5p=MDB%Q#mKaZ$r-sl@*47fozZ{{D(1y%;}#M%xN&?J*;-H31p^W=b#co z!4zu7cojGU#TPPxXPm$t*qEj(>(FdK$!6shqyzNiMp>$U2jwu;hJvzoTB?Sj6m*uz zu+bD%!4pt(jshTvN@YAKb)p`R5i+{t3j>2H0Xp(c1yKUctu&lE7K7+4a-x=s?!s`? zQc-Ic;X>{+!=RC!^-aDdla-;~un{h~*ud+rBl%gq)qAr0Ezi!!qn?foMLuBTPeMlE zyv!lShzdCb$a5iP**iHK@ab#>Jp)PVe{AASG}t6l5wDEgd7j)L0%@_hGPpty_o97& z-y5|VuYbQ_M34tclV+-J1@hnmNQ3ZS@-GG60Cd_%U}TX2ZR z8le&bm+39zdRDX;6XLrq=FN~!@_fsS&=0zX7qu<&?=FHnvf%TqA+tD|fp9WHQ73~= z9p7%CzB@S|v=Q~OS~(?&2Yz(bC(E{=*afv{uov#6S_@~u$_ULx&=*sONTV{2 zV`8uP@IFIQGpS59onG1WNBU5X82e%HERB}WNBHBg={(DN9dN=N(box+NC`~a)0A-u zgB2cNTsi8X`<`)yT>bQ3$iYMf`Apb;+ zXFfBY45D;miB10y^o*eVcdD`tS(6ekxuSKrzdW7prx->h^DxS5A^K}}Ld>-g*d+Lg z72HsIg`Vq_yP5HYZ@9kML6qn7WoA~Fq;3q=!BK{mXLm*_^?uthq&wsPBQ{R#_eAJ}596xk@qze+NxAcrUCg1Rz#mp=yZp z8S>_fz#iMzd&|^~)5MRg$gpk!omOk(sgaCiT{uB*$l1|Me~yL(ZNx?3x11#1r(-wr z7>c0za}3$4{SWHMa}-1@UwhcvURPCz$VC+JO&+$Op0aL(MR#|!!(I`Tl$J-<;F7@{ zVIn&^ez>f3fq?SP<#`1b4JyZ)A^wQR45)~j5Hqwv$O$QJ>Y`iJ_vIXPBuL>H3e53E9nY@86iLEH zT{Rw?of<5c8Xv>>Jx5ku1=F&hlDC=_d3Vt1;mGB)*NA7iT^}X%vap!1g28f}GChvtVI{KsEmw{0ukxwJw4p zykY`72uzWu-(twlB4`RtnL=|KHn!(N*~vLzGk5BU{$qkzJd2FrpcYuXa^X=Xl@0Kk zn<kWQvZb5!&&m4NPQ*5oo$H0@&=aJh(mNIXA)xR=gltAwq_os2Rb zK;B4odB7@;j7TUt!3TGLGZ2nn)Ec9-yfheIMw>C&M96l51u&4zs!fY}r?m!xNHM$C z*w*?Z1v@pjS#Q)(9TMlJ(rC24scj_RJb`|x3(g$2B;=o}nZlcFNH5qI?NJu@LD{hP z- z6^_8!)N=8(8#Txy6wfQo(jhrixdt^Ke<`Xx+2#u8nK8^2w#-qH7q*}F^_zG>yaeoN zQeh)&7b4oaM=_XXH9aig473cq(OZKKRG5>(Vcws+}LM3syL!jb&@{rYP8qW$P^1=>(NYTHrqdd8~5a1F*#~9j)yFMkC zJ?fJFG>!g(zGbTcM44cWN~f~D`>l8-Po+(qO>+Y z@iF`=aACWUZl0?^CNUx^{*4~WCqH1-K6UuFmHI~aS%0BET^(5o#^d{l%cl`g6gsQ0 zRKf$W)-4~$|FK{qnniRKoo^3j9>Zlx8IztA?Q{BHV=sVyetY*X5r_$1n!dmKu(;Iv z$&LBnpXHX}-y4IXi$nxfu)$lE4t>Z{tqFw&8zm2|q|3b|*dd`J8p+(4J@59gF@N+f zWzG1K=YDkKe-7KaJCmAg0;|F(am~o?^b?FD=QB(~VDJCr%?TX*y4;6;1J3;jcjl9e zMbJ!Vw&9xzOAz82*0_V`%=rdAs@X7~DWSUY;<_6|ao7R(SCda)t2(LD7w?D>@POf(Yv8P^L7P zh*j0$W{MOlZO1%F3M!`vnSCWBI5SFAobc5w96YM~p}lBSMlZ=0mc*QG`fKfQ(V^t) z`N=pWd_!oG-2m^#$R1}m5A<>16`YsCU!zBHP$(^9R>@|KZg;}8)9AfA9^B&gr%Zb_ ziBUJBS3nIgoW8KL!UUlODnu`Y;a(a&FGULV^ z0e5cdZl4T-jm<~YPy-R1qBDp4@$JyiFq@vyP_`fSwa$Et&E%#YN!AWYC>*j(HIn2A%FAKu7u1MWFCK-=e_Mgr0F= zE>~v+*qcjzR9MGLAZlGhoP-qGLUJU5F$jG*9~_WHiC3Gs*i3Xz1j3Aimxs{$NJXH^ zb3^fp*Ye?9z1eNE>6#;b|dK62M;EAT$Gb7;VGQKH}3ltjX zc0J>o5`mmt3bpMPo`!hFlsb-$|?^jg(q){%o{P^PlFLh>ue)N;bj$yfRemGRA`7d z>)wxXzQ;ktKs*G7>O^kupkqNq-|w$br?}yWDdk8#E3*(-z_&_WN*-x&+zsSmVsjMB ztG3#8;b|lKlIqL@^_vY(5jo-O8NteTb#TLfk+)#lmrzDf2=J^Tu|&-O9|El=U&5*y zfsuw@6RXjv(?doUm_nGxWvW>XVib!OnL4Sn+yy4-L1>al_Q)9k=}XeH!dt9cqo#7{zu8hZAdY1o%YO&Kv=G z)a0oC5?2WpvdF`I)i;f1;-Dza8iSs=41^;-{0$0VwZ2LHmi{g}kw@LLsp4SU(;7Zf zL2^Kr05>2K?mwa8!+%4m*g#<`Xfo6_lZ7qkRG4{!Bt?8?e|cl>r(f7l;h)#5Cy`KkMH7&J*;et zz&oIpJwpc!Pcx$F#W>UPj~^j$e@Kse7UpR%SqehBrY>{^5a&oL2HP8@#fVO9^z?|Y zPw{L&W;im|f8F)ybRfr`hkZP*+T3HY-6_#lTuPZ%8?6c4}hb zFOB}%i-?x58!>GGfE2gO~0+=GQ zO{JDz^9*WJJ5AIXDV@z*pbVHP-!=fIPs-@in?d0wg;DwyrbZ0(lHFr8mwp1far;g? zi_ELwkhslJ>n!+KuaeS;ft_7IGl=m>HHvtNZCWZwn+kdvUx4f9?r$YQ(g>ulEOew~ z^oXyoni54gK&fAldpuwnG45K*ZjV5+f5ExUr7b|Y?v6dgCEv!i@8IB*PTC|T34ZS5 zx0cXze)=_jXF?M`ZlrJP_^tyIh~FG>xP*SBj7$|9$EeB*G!gynb>vWJirYxqd**=r z$pZ8|E=LR$5ng~(g7}UAdzx=U8#K8TY|sfB53r$6k(f$SC5YKv{%OY)7-#_z@q z<3|OJ_kBphkl$dO@dLejo33(2?Ua*Vl#-F=jy-EuwyE#TM=Ssr7d5~HjFk-q!H;S* zD*(GZ4CZ8Bbuk;UhSvZ%P;LrGpJqA9mkWslDO^!;7X_6Hy1$u&h5R?h?d9R}{4+&z z9WkVLgOG{A%oa~7LN^gs$1_pPy23DXW$)0NN zCZA04C5sRWE6rzFyqWuZ)N2i^TtUlIUP}h(AT4LnfjjFpSAB+rYZY{`Umzr8DBVFU z!WC~3{P(^l3)AP~C_|sF)re*uy*sU)G5eHJGYv6YnRP;$F)0pBN>eb0V_vfoeh4eS z-L7kCKG4kqqzJ9|TP8(q&n@P^HU;P}00j1a&~XuddAI1zg%1mWFnUPBq8V z3lRD`mqQml*X7Vf?{_(L;e)3yk+HLk9?O#@z*UD-^aOv~D|i#1k_9C0 zKAw=_HuGQ-If?{WD;P(eOrv{R-d}pUd5ggTP?aHlLaTE-c~JQkRH)RW_MR}x6vj-* zZgm6&Xqa;{&zNO?o}F>#@E%-(D*^rE28e&A(HpK2doX;27n@Ol-z%&~9;8%oV%`rO z4}*!Nd9g5eG6e__=U&gWHauL)#1u^Aln+@hDUIJrGX|y9IkT!KY>m1R5_hKYE!#Lx zyaP?d$EkR#J5(?k*L8@{hbn!Y+7_!R!Ndep3B2lyoYpl_~&{b#^r5vUOk5BT_P=GV~r{ujqMnuoBqEbh$S@d{#ru+2J zfx>ML(6WYzp{j7}gW@zmahjl5HBdj%(BU)ca}qES4g9+WYDAj#HNNeQeThHo_!|mK zd`b#O5g3B4qgK;GqOgJeX7veUlD@9>zU-}kxkXJt1-gGz)~8^#Uw8H5#G3)cZK%p? zI>pRYIe53S-a%dBLIw6&*C_O*%!ep?9rGcIUc`KeqE~R@uDN5M-7Z*6*Xr}4R^xZm z)Fva=_OxlzO<2($@oMdj%_1FU+P>P|VSD^j)c*Kg>f=mx1?!(VVk`&lqTm!SPr<|w z+cqT<0s8Hr^c5W~acbAKK){H8{kB4B3;I8F7l!#J^Z07~_^Si#DiQIAd1dAxtV595e6di|bwEz>c?=`zB2kV9}yVy2VPZ^4^F znChMa&P7myg7J(|HB^pA^gVBWBtGc{a!SFnzzqsvW(n<-tSvL&2JyT$|5bY{k$-CZ zZ5^q+(}YYTmMhJvH1v#GBN{|sb(kK3;v8MFY$_+Gy3&+RBS7wEytsyvCUL9r9!lmR zdH}$gMQaXB-h$DQnhkkji*!Gkv`pfo(SiE}!|%9oMUa#J*gVKILknnH5rTKK2sWT# z^|IjgDs?afhHq(e6HCwyjK|f62Wwyzg>O!X-Fn1gznL8m77zv_a!nzbA2w_agsfkmt0F`N zRvRr`B?yoVD#53qU1Xt+cLGk(^LiV`4p+EigH=KKJEBR`wJ2EReaj`U)%3DEP4Z^T z*1?Ub2ET|(zsjxTaVa|Yf8Rr)A`>ratqBf`r_FdfCHEeFa{b=QvIOVA>jKnzN0P(N zL5ypnF4Gg9HM&D#K$YF!wwkjVE~4}aWpeRKG9L#kDp6`+G8OUV8gX3yQRJ|+AnZ2! zf%_*f36$A=lV4Wj=-`9$cQe%g!W*jdL6x9B=8Nu89su#c9mJbSLymf@N>T{8qhi^3 zQO(g98hfJ;r!%aTk(z8fLBC0|4U01*C(;E9`b9haZ!k`G)}fRB(nRO4LIZ|VNt9l0 z6zde%gS>|^XJVV!p_BUle{)-oFH@Ii3VJ3p?+j2Fyzz&}9zdF@LZ)eX+Ry#awRF^_ zdBkBnjig%)V#8jgQeDBleGMMENS0!=vjvjW^EpsuRP`N&kv9@^x9*3rDud}14aIV! zfu`PpRbn~sQr*s6iUNlv<3a~;-+EcXnA|Kxl$LLI-W)~hbUI;UC%8Tsm1o|xpd7D<7p+&sxHZX-UmP+yvGT5S}DT6IqoHE#= zcLk4~rKh07)2=!)>epj@1?srN@Xv0+30w@D)TTth%2{&*19z-1Pr<+r zpi=U)EtBql#7r-*P>NA~l0IM>S~Ew*e$k!)c~`881q1m1+WWSrIInEKw#BuPKp>DU zTb4d!BhXlYE@MvxV`5W^4t-bem>Hhlr_HN{SjUnteA z+Q_q$;$+y8QMAK&I^fytL3yd=X(7zBin ze0l;U6lylSiBvRmeh!+1@r*@VrWi6t(K=kTI8nj-UQ1&NKz_dcBnmjZr6#C&>Lllw zA>ERipy(t)d~Ri)gA|ZZkT@t0*#i7(Ng7J{gv5i66eaw-;9vXEts>Qy)VJ0>xH=Y- zw&u!~d6u}L)OIO7u_}@hkiv)saa3|@S(=bXbYlw(@|bRFXF$Fpr3br!NYdxiZ zC{DG%ol+)&i=jaidgnwM@Wyrm-ob6r;3h|xT=W}xGe@Y1)S^_2Y{R8(RqGdod!trq zRA5DDAq$b_z1y@8B@7S^;MAPhAjOJ2f^0ZYUs`x%zxhwME8r`f z11l6hhc36_c?(i*G3V{qio2gp?>8FN`ojEt^`u&wtDZFWD~EHH+MfJA4=l5domt;Q zVtT3dlg0TQ%2A>u<^83_XG<^<)}W3x;{k~{$mO4Gy;z*b*YnS$p4yg@?M^sA9Mr`8uuty;2_XRZBDBQz?jkfku%*X=5x)uB$z_VqXUmWBW-vg z568cPx3Rqa1!L==u@^dDT+&p1&V)heB`Mvuc5Utg$;5MKU|v ztYYGzO>yX=r#_SEInHe0IaTpz0ro=Q&uj0ZS+v=K zZ)KZz5pXZ1wpj$m9NL+2n|~jJt)PDs{WsMtxDvs5yv#j}>0_)9SJ22b4Dq24C)aeY z4d-I!zV!4Ae{aYNP>T6K@)H@C@D2nL6LA}_(RFFngx@E}t+35!h|i4s4*I1>s2U0V zO1b`lzbRL?im?aYrO|%B$1ZTDrq!%?tx~GvI&ddEzppKP!e~C8l0&Sv@mFPSX0l@H z{7^2egLP}2p&FMeaGjT4DHj&d2mNNN*j2Ts^ni_yF}f4?&`ymv7};G}g@=(9RsESW zO?%BAX2q~$`mk}cM>vv@!Vc-Mcm6_-(~@bS~IsgKOPIeAp+5)LU`LB_ov z?5XWRYMZ!>H`1ruo7DR+e}FeBd?$I&kK~S+x5>~cL+9BdxLY~=_NRNT%ngcv)6~17 zZf*F@^5g|!M1hJQAjRB>yj4fIonZ=|_I4G8eg>-$yj#S~w>x;b0uSJJ8Xy0PeJS*u zl>U{x6P>7#ddu3WIQ!vl@zn`lX`?~px6#>0XWP0Kj7n?h_foAeDOoUg#m|s$Nj?d$ zFq>Ccw=kCwa4l-Khv=&UOa+X8Uig#fTV~qF?Xh~(%u5%2mz37k&RK5b9@k4x5#^;L5spDUAc;rsPQ2dr$EKklR&XNkHqmR4NYKKR;BD}^|X!#5f z?W5!<`0We*pZaYXIID;|;%s;l*5r}~?6VP1C>;V}IA6xRX0bl8ouK_c4)s*+dYW82|T?z6{mm;jNs2{!-Z8 zuBr6P3C%AfFBx^y_NKOTxx_3emw~C(M=SXfy`$WiWr|E$WS6LD5L#TihbG=nG*SWN zNx4GCbR)4t(2*+94nNW2!z!~EQkOnw#38Tn-(V3n_zbu)xIqB_J&I_4!)#bNq`WeX%7<% zCoJ&XLBy#R#;lMF05TB9HK1Cr4Q61*QtCe;bmSiN|W1dYkq z6@b{T5>|%UV*@AGz{YFiopRZSg|gnt<>?&enlPA4hp0$Xt9)H3eoe(cp85LM3C#zp z>ApN!*8dWxgCx&^L9#k&_WyBMNLXT2)e}&pFo|YOwztO%1QsDE51TN#9+sj=_`a_W z#nVA9p~X91OE%+ZADe*rQ{pkbzzMp=t; zFSQZMh7m|{M)O>OWEbQ_xGD@R6CR-AA#)-qrj};%L`Tye)=o@Vs$rhxr%-R~TWD3tCZ3e__PMlmR0I}--+t_hHKd$rycFpR4eETO9bi-+NQI8SaZ zD7a*NT@uh=LxstTlyZ-CLP~&S=}v)6y8f48&v%>eAe;tL(Vkm7mYAB$Pic%+-kxHK z|FTqon)eN6NE#Ni0o7~_s1J^C|JpG!n<^W4NBD>U^}p7m&l;T+)G5KuMi>xfh^j7( zgoqq?Fyv4&N&B(EMtltamog)F;4RhA(NE@-N$?eH!8*TZC~U`gL}2-J5@pkf&SFRp zLH;j*^b_o1Xb?2v6fcZ6+aR#5QN$G}Qxp-0lkn>*3pxI@*!Wy7Nxm+=1rNb>w`A-6 z;}5?Kh%%=41Jc~NFGK+Q!!O0eI?Iszxt8>xd0A{0@`Fb{XOLs<^2$N6ffrdEj?4ns z;#&7+RvI;&E|p%62VxJ=R;cnthw0C7>abX3aBQ7w+WXqhVw5H|(#NC5z>3yP$UC0tG}WD?+I?~lLz=iZ90pt3-&&Ezso z0=s(4TP|~fRdy7)RahF93R41967V$x%y{M;xD6?CNuJAR$CJRr$y8-K(&l(Ql&Dng zpCZd)E-$IWYw_@W^_#UFc_@>>2bK@_7`!IgtCJdzI&T9Kv%%WOY%fT6RuZl*sRJf| zllPPy8U3`Z*BlA{45SO#wbi0Yt<=qRU@9lAxT7DX-EvQUE(AcPxZvMBZ{|_%CC=-e zkN@!d)QkS9L4ms`8W_GJxP_Y7w38JF+&>NBR@=sBjG`iUQc<(k4pImFBtVKgrI!rP zuv)PWSj{a&>KbZs(VUVBXjVEUyc+3GZ!scVWq^Z~GX)|pESP2NL-vw5hq?Nd2iYAFzCWkmxG#Fe~%&3Yw z8}Y-|V(aw2O|c`S_3`$Q*9Y!@5*C#Ldw$iZx>3)N(@tqW_yxkCshG5Cyq-gDF3ZLf zKGADEW+_8@LnOJhMv@6SrBVMf601XzCELG={6+`G)e@74w&c=J@07j8U4p$V9u$|i;T8}Gvf&Qh_pLFXmQWG9{`vv1 zkDF`1Dp@~qro*_#9t2r5#q8scQ}{Vw{j+CJ(6J065cLSB;)Nf+=S zWYTVBqV(Plrk`(w6JdT|LBPE&L@&KSc66EH^;ld+d~?BcL1AL@OC6qWH~(=sG2%do z?iB_Im@9M=7d!AF1rD=cNh|_(P!|PCQb&qPz=8bxzL9o4W#I+r{8;xL`We3Ldg*nf zqi?E$la|Qg^Qr=e?b^Tjhu_=Z?!nXFDn*M6mjM{Xm)rLf_q>g3&S_1hf{W#wii`V= zgYweielb^=M<8&eaI&;mU6OJbhoV2h$z_307>1#Mfrbk|iqVX!Z#<@_-|`0#KHm=s z-qlrv6)RNpf}Zmj)1#5B-NxJj!c`gs83_yD-xFbHBHhH44^uiFGHj^?~|%7 zLaNgn4@u+Q(y^vx=@1Yc$a z8}q7FUPAdzfCjW!Wx}X5f9hA9ddXyg^WP4EU9O-9z{rXBa5gJU0mq^S+N(7E40T+4 zR%Sb{6^~xe+W)-M+9O;ZVfy>8r}Lah_b5pRj~-+`QvL=u{h+#KzEp*qn=mrz5FPmcbijU<;lpyJ z|0m)&m;?v9m2bpigKSE0EJW_^ql#Ei=xgcakj6V-k}X6wX?XU|D~COStjW8I)9*i@ zWEGim8)`#3AvcP1-r8}Ij$htFR^d|qQ`F^59-$azZc=iDODQKlf0K89_S26ip??Js zt2O1kslSqTzY(V`e(Mt~zgtn{r!SCy+9&XwBjG=-0dxQ_#=hupi*kr(q$aKTlTb_^ z7aI(3d=$IHQ2U8XIlPBL=P95dsy8{D(%oE^CFZbfM-}?@fUaX_RFDOiTjFqXC6>9w z2;<+8h3wQWXgL@Y-&6~Qj$ro})4Uf`57-h`2=l<`S!bsn;S2F=3lg?xr`Gu?5bN9| za#FHWd~KpQM30@F%C~(H%CB#;sF|$y7sv)m)8$`sBQ9?hVI$aIJ}hV!Ep{&-#B++v zzPBD0t|A#5apYBcwPFWW(5}OLe21&BjLJRZQz1K9lIpeM!04ZOvnO=V@aqZ2Gp2T< z`TMVDG;(0hv@AQXXCQtetTPQ}Gk!3ehV<}Q=PMAe>PQua`vq%Wkn)Z$XJ^@x$Els; zghYGi?@V%kwv(A%hFHQkOzE@j4$$~i?Uyj z{!m6;yJO8T95~S7pxXEHDE`F{yu6FP4v34U`ETXHAJ1tZJ1rCNQaOXxU$$89pTzeU z_VanYJ@#y`Of$BhG9(qQBAK)bnBb{UAE9*mEkhI}iU$#r5M9i4VPFtFijKZH4xje9 z?Cdj0mZqsvEU-t)niUG=;y@Of71BYJ4w?r542xnW$OjQUb;cA*upnJsj1I1C{Y}8o zPKi~OC}uIuHp-Wyk`k0`AL)^GhUW-juczh?@*jQOZb_0}9sUL!>>ru}`eou+$=v3$ z*;%=qXkPawSN2Q0yI8h6ledCjZr>3B+W+!4KDb4R6^K}J3I8`e>V>0+mJ#@kq@lwA zC!b3+9uOdbrdLM@lNpatF9fd;)&xccbcpMPjn$K(uYj;)lXx$}^O?jl1p|#8xM)1d zaVt}=#M1dl)zNz@8 zW#Veyl#c7C-(oTc;uen|G%`*bNW@1mzmHx@xBLQVV5Bh&%>=`tmLtL*<8aBiZtKu6 zsu5&bkmNB-!Nm<;*Jvk&H@-3e`UE=f*Vz>$VV1JNd&A9y_Jv{S^kR2VwiV6NmbAF^bKhm74*GA3%7So(_|LBLHIl{*ONOAtWxE$G(9~qoK zO9m&EH^^KK6lY?@j>rz_;6qwrZ;alFj7SE`BozU!B{CZ5g9z+o*tdjv>Sm0-RV%rJ zkrrk=ee&L8a&E%e3(F4`a8&k6M`7xbsZ}6vPF*^+A=(W;dCWr_nyuD?c5>_fE#)|o zKCE{FAsAwd-CY6qu0TYSI0ok-XIH65W5l8)DLMoE-L8fn^ndS+@RHo`4CDX!jQxLdM);p~ z1wRTGJ`}2hBNFlki2kQ5G{XTJCU)rxM=%tMqg|iKu?NUEs@xgEQFhKd>l1Ki$P0Ae zfxZ^wfby%WwHW%GsZb>Zna z!6Xe5zr%P-D$lVcU19VBjP$2aW78Tl*Uh#>2)=@?CI~SFhAA1eX-6@A)a39b# z@td$1E}X7NK4(7kuMPR(xl;5k|d=qV$eJY+e=u^-d~{LMgq>xmnH>J zCVFX|S#j%LAQq~qiG%@-Y7p~srvmgp!ZQaCi!OF79aLt~_efGBcF{p9q~Py)Tdg&l(Lu5s^gLBOM?{rErLzLtS*RypB81s zSvH|@?-0Y$vU}_4x?0TiA&!J%j2J-2u7*+V zTMAXhaWD{O?J4GqQlZ<0B1_wj#fWZ{WN*_peSq`od;gWkC zyRVB^!Cg&fWl!(H2ZH**8VGXT!2ulXX7XTDAq z7FaQHz_dSiANi_K=D$ajx7d%TVP2pz051AGfuSIcB93fS|WI2_LR`!b$N^{8oOr$S$xym7xcr<*|k`zSXjX#0|DVYj3fvK9QXXBPZIwdKvh$J0D~{A=*hMf5Hh7)vmFv(ffOQoanlBonU#n820J&@MKCA(>I zPg|_|xvi$f5}w;uId7B4+qcb3w>F)=uxj;7t5(NWtxjxO=^R4Ivz$2nT~{>!!{sva zB`KF2iByT&a62eq{h_hNGd4cu3JiKu|=VBT0+ zk*8|6awy7g-$95m0F3;oQAGjz4;4RCtkjDz*5WH@%#872&ZGalZh2H(UaTPK@`if!Ypn95{@3TI~7(XvuU@o0Uhuo*IfXo(618ODmJ2qB&mhjn=0;Dh1e z^t(NT;t2P}HPOrJfNX4|RszpNe<=1v=ZSMYiavR`^L zxD8@zb3rvBv=is-P-UkGyelnF07P8e6)=)8+bUZ3j-ex4FkMwwYQzl}A8;u49ri3A6~zW}DYDA3a_*s-URm4SMSvfaN}z0vMHFeks} zZ^_yl4`DAu$HPYi>HY^zKY6A_^RdsnJ|Zm=yG3U)G{FL@cYSSD(Ey9a!|jyA0xFOl z`36NjB7EjU8IaTILnxK8Mb`nfvT3|wQXN|~9^L5j)Q=l=BLgc9t6+I!&WD8~OPHQ5 zU2@f8Qs;G=<3lo(miU7VycQjVq#ldb1CSob2-^~)u^@`x@U)!7m6%iYCEl0Hs}?tx ztL^ZL$0mdCgz4?iAr(VOg*tc?NTa9RdOS!^fv8&)6%d1jH5hWhYOn|=?KFY$P;7)h zdM6Cm;xGjAk`u1}Mx|1|pL1J=VP<+YYp>qs(a1@Nsj?W-(@!Itn%sfty062(vDt`a zU0O8d)^Hbv%jI{MH?{`0iW7 zg?;v|fi45vjZ5b3t6HNr=cOJ9P}xq}U1E&fO)(%OT6V zbY1Exv|r9kGncP@%VG-fyI@ zRu8emFk09hN!At17e$Tko!h+~=pbO&SIL8X3wmd;%WLE!Ok!LCVDc$0M+C_Jm5qQ! zmi|Uy2921;5lLk~;E;ViWJo3oi`hmDxyJlz3HxC%db#CD3x)JVPGi5kQ9=S@thUR9 zKhrNDBIHm)iveP$Pz>xQVGjf9xRvXtaE4wHW@b?gbl#E36WO_0i=D4?!*kl)me4|* z+B&z;rm@Zq##dR|6RU`_%Sg&!mPeWg_Py=>QmwE7PxF)eD573F(b>~ujan1yl|3Bv zVwuUdVJWG>F-bW&JE0lbMxH(`F&gEY6M{FUIP@#XJ6fn!ANaAYcM1O=i2U4iibUlML?W}dNBkq^%9(*bqN>i(f-5uRDIfsi#k$2)j3ms zqa<3`79(b&n=~-OR-=5r1M7n1|kfMw#i-$4fDHfdBKzMxY5r&Gp*aKaVA}{b`g*&y9lkH(!3&hw%zJ@|E z_MM%%V2piN9gCN^6ppd)?r&iM8T-ZQxEJDLXjw?czPr~^P{zKuvlo`J@9X+%(-f%! z|0QJ#n|TTfiHxuZjMtJ1k2C*W=aWZ-{&O*Cz(~D4uY}D@mx^)Wwj{B5x17)u^;nD zOlcl_Xk?i}qT8TEk3Hmj!Zvw3WPKsRF{5|`XGH~BJ06s9^&a~X{C`))$A0Q#CfdGR z`gKmnl8*(<@3!8<7G2!{TEew%>Mk!rdh<&r`hv2uxM{0Pc(uKw6$rYqveMM@OC*K> zb%q06o7Xj>;&+O5BwgTmT(F)GLOR@s^bZi-59yp9_^j?D{*46{Xi5T!nZTO{1&GAm z@o+lF64jEgKqn1`=1SZq>8uNJ1X6C)U`+^x^nKM zSb!w%HBdz!PK`Si7>|#=SNo8$u*w> zc{#wn@vm1@wr;&ITH6EtLZt~;OA}}%0WK5#e?@jMK2K0|7@<@9wCFte*~tAk#;+ta2i70t;-2E?^hox@59u z@KVYP=z^e!xx`$lz-2LZ$k7nDZGGTf(eyy4=0Zl~a`rtcm2t{l`wE?{MX0}vdGZS7wbn>}h#-MFg6_}_lr30JNuc474qUNXs zVmPbtz}-4-n10ysV=EOrfGQ{roF=HQ zc+0%sE>}`3lOJ<1(IQ`I_z8LSzE3NdsW zS|#PZi^nV)tQ4kQVSYEjj9O0z)RN7Mia>LoPQ&b5Lv2Tuu*3=OB78{BHjRl^7iTVp z@cK>z`Rj*ePtG4+qSNnQ!gfgs6R5!E)OaY#-jRQtoIEMo$=u7T`n$+~_F%mJ$=uFC z6@MRB4*(@%H}U9GNrZC8oJMy0A#0_niiF?*%wZs-D*UwO)Xn-R#e-81HzPfOM$~Yb z$f}2D}EPiliZjsJ#pqDUK$1RfpwZK*e&f!)Re<+LW-Z(4`RG!U<;}k2-<11*JGaM@w)zfevgI zu`$TK&iBCy5`G;D(hwVG45I-bfi>p|b4IZrdy{>#@cL+m^T$khD|%fAFI?ZvA#nipvxtwNFriV+2@7twkpC(&evDD?EYGjOhi4AK^6JeH z-8i2O*iCS*g;0kkp&irya;Yz^vQ>>l- zd(n&9Ve&d)qMNK-9{WKJ>VgzX+_dXH>SbsL1HH4HS=oCtW0y{E7zFAt8`cw!v1;{1 z%(WzBLM^Ve2Fbwq50YFxb~xf894w#;GsanP96}Ognl{)0A*;GvwNUP_;MVhs({b4K zbj?8CRlGjg=K{1~C?&+|y$T_0IL@amo z{H4{9ce$&y{8e_vdJ1J4s^EqmO<2APFs_O%mF87BiRQWZN;T!n>oP2L4OWauhz&Ld2azHZHHiPg|J6i+6s55y%l~xfd=gn zCCN*fHl&c+BCYALnm=tVECj&KO9Q#;D>p#5Ocbz0WkDLZK`{P638{5&W$QU5^L+hC zwl%HiNQ72e4hCA(4k) zhUoTephtbjCjy(oYBrF!eMr90reD6#RYbOcf`QRD?6VW%xd>v|G2x;B^$8HGj5Qi7 zI(<%~XU)j-h4LYm}_Gvh?Dkr0klhMr7{k;ZoLzfEb z037LSoW3?qWXPhSe;(7th!1Vg!T-=94G8%HwSdJH&$0?qu04)vmQ&6UwQJM}=mP_A+2NOOYQ)EFG>sEP~Jo@v#;9~ z@jYQ*WH!-e*WatFt3|kJlpEfx_W)uiE+t6`7^KqPzV&4sUQ@9?yak$2+H8FPS{)@R zj)dCTwD&!$Z5ku3ATm(Pt{aUy?k27*Zaeg^Drm0*BCPiL%;&Old8}a3U#*_?;;!|o zphkj;S?$nI*}Y<4HCy3U_CgYKn4ypAQwTm^X58_eLSrT>*oB&&=08}?HFEHBZmlCXKw;5W^fw{n4^S;=Aw2o(^QEHrU23}mB zUo;NNJhJq;l}<0pkv~KSO(7pOA8r4Q6|%GzV30HPI7LVNk+-!E z)TovhPRDH-hH=`|&dYi5hb5V*lwI*=`o3(dNAr`I*Ai$JA(s_7en z3J9*)(D_*A7dU@pVoP|qN|<)&9R319CZ%0D(=LMqT5`t$HRp{Ycf1$F-DSz$c@lZj z#qi_%Dd_h${9X(RFVJ;IpJcYMItLgSyz^d7g|T!!HDu${s7gqJ!Hn5w8ksN(@C%3g zPiap%taLv#6;-D4>ohpbGYu`f5=p5vQ7ei{X1M?$Dy4~URgN=Ji*D7cs@5!^!v9zS zA(;~o4E*o?)X>}(E7T$CR)~6OJhmV6APRH^Y;lJk M{xN3p=D9ciA0Z}Xs{jB1 diff --git a/lang/qet_hr.qm b/lang/qet_hr.qm deleted file mode 100644 index 2bbbc6e430c6e498e68ba647f55f049f07c61997..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81310 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 GsQ(Yv%8n`k diff --git a/lang/qet_hu.qm b/lang/qet_hu.qm deleted file mode 100644 index c9ed2ce47f93e4b713f3f4db15cb473e5d5a7f07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 357978 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

)X8V!fw2E-j*@7C;Wr;w$be%7mMcGUY-KK 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

<>Q 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%0D&zR~Y9Q*Z*h?$$x>wIIRjP-T{N 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

H}TU3 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 diff --git a/lang/qet_nb.qm b/lang/qet_nb.qm deleted file mode 100644 index 275ae96f2fc99248f1e7852bd9832aca8ba621ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 250361 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


^>*eD zy0<&-Am1IXdmo^NJg)0Cc@P)wywDp4Vg40yNpGBwc~$F~dear`Ytucwwb4_|g-+m|Ky-f;BOB)#n(^t7Q>Uw9AZ zh_w^-MG7aQFZ8Fr__I?a{o&Mm>TeKD^w4{@sD*icH+|_hIRAX(_2neq7dWf;M!iLo zhUhEwz}-^oR(-`sVd%Gy*88=_xxHVc_v;V&zh0rQ{{eQg^SZu)9{TVhS|F>@PM}=6 zv4Vrl`lfGui8}1n2ZYZ>Uwe=~C>Q!rdt>!29z~*`GE?8$whR5CYWmjK;MYAq>f1d8 z{p~sR9eO-OoK4Vo*oN~wnNJ@)5AyJL*M}B63j16KyafH!=tI$;r1j4PN*z`Duxps} zbeg6QkN5+Ash~dM8vJYXXZnceAQTyK3fIo zyW)N?wJ53Y`ZMDEia>o-qhY8|Ht1uL7Qjv(=@XVG5?ixT-)9%%gKdw#uLk^{KCJJH zdw1+&F@3-81V8Md9~_6d+t|wbA-hWxMW5Cu&MSp;E~g(pQH}dMW%MHkfv>Y=^&`(t zMBaH?KdO91=*fEhs5d)EZn0YbO9lAT!2bGQ*6u?czgs`%LLu~Ff6@P10rT3{oAp!g zqCYU4>E~X$h59y8KlgGlNn0A}=fNK3#69{2ozS-!P)fhB4B~Lr*7~LSxxW7(kabz4 zU%U1+?$c${uYLUh_azGIw+swLUAs@ewHMCoSttFUzf2@%+Ns~(0{c4CM8CZ~;_~mC z^hqt&V%@g-qzkZz3LEuF?{||VJ<;#5wIVrwjed8#TEz1F3#^U%fVK3yw@twuYNSB9 zQGflh!2Xa!SN+M^&yX)&)1RutP?wwar*olSvu3FN{KgH)j|=H9Uw~fqch}!O4Zjjt zLBVT_1j?T4^mk@LZwnUI-(3}seCdh)9;*Yt+eUx?co6cL0{Tb84iM{|PoP}ufc|N1 z(6d+3KO2pFxlFMB*)8;G>X*{L?Bff4X`_F2J_h!s&BoJXxl{f86SpI2^!$~hkS zNRUCldIC|)_6B3N1l(htU@#TDgZ{;AgUPWPaelJF+8g%W$-|Io82su_eugX*hW>C( zLsk#SQC?=q+5_{lWfy=U#Fl#jLxBT;VZakWJFyjofSrNef#JY?h8(!REH~O`$bA6( zJb7Wrvj=f>;ur-_jTOk$8bjWC;6JvMKsn*LA>Yjel6&4YS}Qi+elEvnY7=H-XI9%TRbI_tk+2(tF+ZnK0A-ATLj8A_8BUA&p_X2zM<;bL_D9xP<`7(_@Q0` zr3VcRH7mexwhlM=oCSTqK!H-}SVR5avJi`VB2cb!(@=jk>hU?J4UOKr6FrJIG~@lL zqfHIXo}y0dyGEewyU`GEL`Gh>+R!rLBT0rI46VjaA$dfEp>++|-##xx+of9AZ8k&5 zQOI+WUcu8j1v0h2!Cq$p=A*!+SjX+Tg6|>>;Ro&LgS<0@UqStK^_ro}!wS%cSB5B0 z_?2ck6l`BlprpPfkS%Lyh(0_IeVJwgSx&Vf`XlP1xKRd2{804eVhzrFbBPt`Yltg# z6@B=;hPVpl5g+{wy-MO7AQkjG7O5 z2VF9Z{t^B@@V?Az3B$Ba`AMe1hTpp*&TP(SnALt0@`G^0yr@W$ zOq~r2xt`YgU|9GAuvM60v34!$h{uM-xe%vygA9vfVW*A}hQ&8fALid@SlSwO)M1Tb z=_L4-3hM;2&hHJ&)ST`E!?M5im~S*TEcb%k?c)urL*d`a&9K1}`ZU8}_%k>7_j;&c zn|BI^zE-fam*LN3Z{#O44SycMd3DcgNGjR|cGf~5i##e&&eX+_~rTC!`_|&MC}R~4vmLg`zv^&`w3)GH3iCnw+zQu!2VX} zG@K|}81c1};pEWzB-fd1IJ5mC>h0eQXUt8Y@j>1i?P~A$ot_1W6ff>NY0`%)=UaQe`lt#!I1=_`Kyf$hd;v`D;b-3b|9L4 z*VxJ%a-NaP*gmfZ{Qn?hc(M=la)Yr;;Bw6Et;VQx1rRreE4b%^KqmDyMi1|cI{8my zY;`Be-6D*=I$g*6wj28`hTRk&XzX|QG~#+rWB+sBB$Ya79Ae%~QvI^VpJ!r!Z{HY) zR*yn|1mXfpo3;P2R6Z9Mc-9in03#uGZ|!I9#|3*M)3zjKN4qW3WLt>+jo zFNh<$uu`Bjaj)_6!h)#N%L-(p9vQDEAHiI5jPd3!Ey;QB8}H=ag??;z!GUXKKC_g zZV$mcJK3atejWT}GFh}SB-th^SbT@cvZgTXx{fJRp>-tX+bWP1JZ8!~!GeBi2L&&9 zn%qXJa9_N%$)j8al4Bm4JUT<4yLUC&YBk2()XP-(;V(oJ0!&4Q4n_V~(^O>2WYq7^ zOrBL?e>o;8m?y#HiFp;3-yo3LrwEiwZ!ndavI2F>S(CRG`djn}@CC7eStjpT) zLEd!V)S@o@NtnApIjpa#mF_u7RlAtlw}4))DQ60f!}EoU31oE(2$Y@oOd;KUaj$H; z$?g+K>_aY7crg5Lr#MsB3unOpI8&6kU$(~N7%~F!=|_PqytXO6*InGFSYnFbjC}?T zG$r&XihHWvOns9t6D>Y$8jt`zdREXh;NV1(vTIF)4kcrqY^K5Jhq6;UOo^jr5IYiL z`q>x$+P#fw_{dwt{;gsfl?Q%jzzox`yI{vp{xyxg4u2Im-1J);`2SshnSMk4DxG~| znz9%A968K1wOAtZurUJVUe!!f-=V(HJP^n>b`~gmWj4)e1ixPNqG`d;D@blL*|acw zH)0)HnieKsL0{9~wCKHze5S2H*|)A~=?Gr$juI$$U20mIgzudr1j?11rlrZJAlKKX zwS{0$rs}4(h!au)gMuYyo7O(Dlbm~@Y1_}J8}vb@Wc6jtQ}w3ZbMv7;w_KnUJVe3K zQ%w8XPC!4Vv}wO-5y>6)nD)=I5Lw=s_TxSzb&EG0viV@0-%UrSuEsr&s|r3_V>;Fl z`I5(2)3HX-!)8v?@uFey%YT?o=y9$MikVLK+lxBsjOk4Mr$n0hrZb&E*L>P^;lU2v zADe8tG<7ZdY9|%+Z6=VlA7HvX0RF1{JAsl-Es)vInJ)8t&SmPEZu0wBM^>6{q35Wa_H~vRq)Cgfy{8wbbCQz)XPsycM2`X=ZY$s?%dyidxL+P?tWND z6f;;L>ta-}A8r_og`AiFE>K!~Tp+8l%JgJcX4tKp>8b5K$*nJ#UXJl1wy1#V<*}1Q zBlnqJ&w^YsMJo6vM4&X-Qy`Odrq>Tbke^&ua8JBIMq^E{9}Pm?x7+k42K&#x%=A7M z^MoxsOz-0`r(e0mOtEW;`KiqEM*MtP4YTGp`T~9O36x9NQ}CUFbsCtpyWl^o*A~cP z{xREP(66er&YXYb9Q5fbmF4eX=NpoA8%S`h{ALN0#LRI87Qv=P_63|zO z_A%FJIf$gn9_AXC#uKZy*<5GL3(PBKn*Dt)qAqV{Zd4BX(|?w^*>J>*X5$31qLR7U zPIu(tW^;>3lrbo zHuq|B4SC2wb8pin+^^A^e|iQ#@me+yLOsX|Yt3V{YV^%7nSUL!h8P_;PvWl^>}Z}e z68V5s(LAk8dEEQ7m}eYqiTb;vc`iPGK|QmZ7d8taX6R~O*fWOY3RTUk_hiF8nyu!w z<>ny&&Mr`HKH0o+Dg5l>p60FYJK%4Ro3~aPihF|P%}LEIsAmS6_fCdg-AXj?eT~ zhxvwfH%Z4k3S>ENn{TcxASA+}(9OGE!P>*juk$>@=N~(o-{wU<(ei=$UFE&V zNB=Ruds!X+<+b_41iZiO2?fXORq%w-{9(ln%qe)E7M%h7UEXEM%0DOb(>_bi&Cd~6?pgA!(j$+2Zprr&`P3V$rQk>CeMA|H=c^$^ zL6a?|1D_Bp-P=-mDg23Xyrs%<qsi2w=7r)IoG{zS%&&w zc3)^&YiJC<&J_ruPxip!mhJ< zS$2jZPkEPU*>z$U^lpG<|Am6+g9TX*RQMZya=GR3rtOIDRV~Lm&Vaw1WjS$jHPQVA zmNOfh;~uS#1BVbVdVtWeOs&^@9zA*7{@8 z2E=8_TD2eazHgMZ_CJXv<#}QC&5i!S;{I0O*@>Xv(dv8kH127vvDP)ipZ__-TK95! zk}A4c{T}1IOFXdp2SD$JjklO)&8ZjIRvfA;fsYs?81`u8ss+#apq-KqjvrWmV(K`#n8t&X33aK1yV z&XT=|oQc-B9k`#~^q@7NBJwof3D)j281k)c*6#nfku<%Rb(kOgz>+=IVcn*Z6t&1Y zX39Lwd5#K{*evU~0)6p0wwDU}+ZBvCr{KZm0wvXK1k@LJL<+83LXj($k-n1)Ln?z%P(4|Exm?& zpBJq&WCO{4i(6-(gTD%VZJpbs0jp!0V#8-zH{>r&lAE`63x1~oJJ{U1yXQrc ziaM>kM1*&i zuUc5o?|>eU{b0Rzx(DLu5bO0M_!G}t*6T+Q-+Q$YD3!`%y;B{Zb8Gv~dS@=||_1Nzt1%$lH}3rVR`80)S?86CkHvnPEHJ|;lA-#TPq>np5Tnr^7qsVaU{ey z^9}Tg432VyOZ+(xs!fp;LQ(kFf#>bi^^@l?fXVR0V&l;yW8f2nltjYE%F#1!Lb)LT**48`h7fnqu`hd=*Dt_%{K+DW$XEiodfL zUgI(j$J5pShfh?c(x8K1I)VTA*)*=>h=~sljki^?RSmX9IPIOQ6^IUwjEZ+u>1L0w z85J29ALkXH(6e)JbYxU7FNZU{K=llMP_=Y$^^Aqv2pbEd?%1kR9B&N1v%AQas z!BO^%I4K5ec2X#GmD7n4I%vadLDU>HW3kb$;vm!P+`VZq>@z;jR?8V05fvGe(9>2c zsCh>8x%lnaXCx@aWI)l9O3}w25*eJK>6U{|*deem{N*QL6K7!qqg>}~R1dFl1N;)x zIZ~IXYY%fcgKhSBTXTDutzK}3N0b|@aR+CIzX`x5zD(EZqU*HVYX|sbECxSN;%>r$ zKVPQh5`!N!$Kl9`R9V@o=u|E?coQjY@!(*lIhRF_Cs>MkEJNGx8NgLvfDW6L6ozO~(dw zihsF^bI$oPkuaQKxOU-d@Oo!F!QXWQe>po`;`~X@CJ!B)VjRBeg70~_;MBvxwD2(a zI?V+An)&iD=X3U5sg0? z$wRDHMmx=lV^q9u9M+8&oTRO840HyEC4_!8*cZcPf&}cSE4b%-;T5*TL!eM1%!C%wULgWY0^Cb3vVO!x&dxo}E43QrR4J70IPU4?QCc+UD z?)-}2J@G4h6t#>5|KBVA&!iIxz5I&um!Za>jm#69P#k~QcWx%_y!Om!5eu~t zD)o8!plxAy#(kycR3V&3yRr>^@&H?`(-G^)&^PfMKN=x3gLK11DTj*^5BaG%K|FGT zjCPP4UQY?=yk3aGAD)VEGej-!qHFYzi9>B=YZw{Rl~Xd;3Jc?3rz_?ykar}slIJK< zRK@kECNMHS%3dXdr*xvMXqfK(s-Wf#GkUiL-kJ`P6 zYh~|RUC`FBJGr=H90}d+!3nm`4m2%zJrU2DzzcDaHn@#Ydt6*_q|=^~WBr%MLSNvK zugE!e@#I?BEp_FDnAC+b+PsfAnkW(7xVe2o5Z}jRdrlENL;{wwq#~qL@ucO(g==+5 zh~rz13dX{bNS|zB38^gDQum(`FIn+Bg%ZS?+!ZT{Y?`u|YDGnc$B07NCX~PeMf?0L z-B6wIGviGX4Kupnr0 zYl#q^KFsyBmNzu)F$o#%-+-d@6%-Gl+Vzaa2jMX_=lRl7+{y5`$SZ<$kNE{Bghphz zSBuE^c!9|!ohD;lqhM#aJuYMUW`(-A^bP9_2hoxwpo zb{q>n(s9ugRuXE@n2V~ywML~_Y#KkEL54TYxI}oi!!7tf3%NvFIzTCJ;EQ7vl|_8z z>xMxBq4ub#geZKGroS0&r(Oo!q}4EKJp3PUhH@u9d2xJt%gTr|Ui7EdQE5DIUEz@r z=#oX2KzmP45*xP1loIq)0?vPR&f^mu_%E$YDYRUMpAmZo6v*6ZrdM2T^6)U|drDdT z-^ESB&GR}1tu+_>8pWOSg>rJQV0T9IK2`uq*I55}dvrQ)&mCOK?m>dP8Ga`Gwa>eA zS<*Qit_55|dO7G2@XU zUEZuzL?SxWu7}OoZFKTNcv1L>FA>NtoF12C9Hh(T%8x3&C`=LPGWO;T=BO|3B5R7q za_`MMBA-5O5N+Jh44yTJC@C^|7t84K$E5Th_=dA#?%-&g5FKK7M#hArliRgrWLUU8 zUYteN|AYW&#V3@6^H;RGY)e){?2A zhr23>-}@n_6^>QoGS#C8C4o ziu}m+sJbpsZ@ww!GDz&Yi=*W!*Vo0s^Ubs)$dl%>Kix5Mi}>$Zn0HhXpjT=AwTKi+ z^X{S2Q&Z{!VLPs!WvhjbSuYy|?Hd!1M9tRJ>F9#i7~gC5PgJT=a13%yF2I&Tr@TZL z=hHR$KrB@Ne4VsRGi|HcT`LCIc@qx(XCYnTmcPDax$jz1NtAicmtMlT{<~~Lhteth zj+LumWjkB|@05hWbd?+~RpEmndfw9h;)%ONor8k%~^b%4IM@+JW!|A z#HzXuXY{w1)QFi(u!~z&U8m#QkExx=-feuF*tBAt$|$gxc*Q1y5-+^Mpv^W>4l3eN zT)8d9eJgb`H|^9$z5@;>7EdXy`qcU+)i(Hg$~Zu=5v8TCG(R|%FWQWF#)}Lo65_mZ z6;9{X#VZPJg%@s-smZajN6sN1!1A9fp-1>!Or{N(fY{P3O3bQ5Fp%KSDJ3#TKH}tq zi7%=Oev&aye7vDd`1x0#%O@TaZJRKM)N|lL(w5F~a<{3NEI$Fo=kP=-3{R%=&c9FN zmQUM5@XqwFeThS5rEl?;fq7t!|L!@JBKMBG|Hoy>cf-w#pU0P;;Z#!3?!PSji?zQmQn_vfd@%PoFhjp021yBo!Q@bzwpT}LRc&9(n8t&_@UsT3}` z6-JRKo>A;Ez3%W-k!Rgs)*?k0{4;zHmzYu}aT?qTdHaV`<0~rG@ITY=)YIk>@cVQ- zT(l$8^nzPeoEZM4o>3}Ksa+SR(DGW~RY@Vc;wvTI^8F~yFdo|#nWPRD`TmrhrBq&m zKY!$d4dCt-zxTiML;PgYY)jEwUV?wFDGHD2(_F7q7tMb6M{yew8E0#RHi@m5Bf%CL z9Ak?^zpO`uJw5`dFMq8^a10t~5q8_BnL->-&qD0BgxD}liNbK30d2Q_pqVCZ%Yk)F2Ye5 zmY`h4=HOq&V2x0xUF;!+ z?=KMk76+Z3j^6f|&lX92C}kykO88FQ#TS<08~zUy!EtfC6&J>L73oA%(;1zBjvsF7 zC<1`kQ%(UpLPI5GH((|uh54UIlM_oj)ijBA$51DXuPp>78mnFdvtQ3uvb!R2H1u96 zf5o67Rl~`EZaGR{+=L1Lb_P=b!8bKnW#FP+gv~;WQV;msv@@lnEnJI>k}g#rzfHuJ za>*%mm=ceSL5anD1QnOA17b}nm}~(kQ4``s|KjViG>N%}Q^_}6%&D6P$0)7*uRpC( z`r5ANSfD5mzy6SiNd1)RjE9tz0>(uob5Kkee2|Y_T-r)4lD|%q&&pEk`LuxhMW^Um z$NY)jeft=`*%Y(ZZqmrNC!g!3Yggq&w}js-QIa7gmGVMRK^S*&lEpX1X%FW~zS9=x zNQm?D@)B*IFB0ULI=>ba<$7G>>vZDA9pAwhpU8`wNdf4Z@ffen6pB#^Fc1pe=}yI6 zbh6gP2nUyK(3g$tZYx&83xHpYngP`^h-Ew*I68+1jpDf&2EUiS0?_vVXD(BA6?$h~rxv#Kgx5Y*!#6|K?2&7|AbRa+DFBW-B zYEL(fqc4a9oTQdge5%0Tn_iIVH7&K_z#Az%Sa7j&`{2){dGmU_Rm!hMenGCuvusgC z;d|`SN+|hc7d*5eD~?5qie|E1Tno$LY7(aT&2;uu{gYEriYuj%OWX7Ry()ZzssG=p z#y9x=|6)VMQs$E1WkTQJBQNqKer)`@8Lx)smB}(5N&7e2x+Dc~LCHT*H>>C_ga6~*RD$yk^ zp2PXzRscRjA_|yq5XqW0j)dz;A?M=DJ(Uz@%b$ASZ;<6dhMypx@rL2nsM5&$61Q1X zmx#0T6}T3CC*ySmb)Jr--bYW9fuSyndY*-T7p<=(RNvTVPLyz|npz6GOsk^OcyZ&S z0Gx=prXkeydk!WyN)BEi#0aWN9->Gyeb~%gFKtqd1R*3?gr9FR{a?~47eQPn@AfI- zh~NYrs=!u6oK>36PJ@AEndTT+G*e2&Wp0%_W- zWRYpHGR+6VBe|9?m0Dl%8+xh3^fcAtVcV4|eV6jPDMI<;xn)P7$L-7bNVFe)ai@bf z7jclm8Kwj29K8vqq1>8EpR8*G;(MiL=ifLjH@K$M(35fj%O!;@3Yq_@TjIsJyGm2^Vd&7c1h z!Y-au2!EF%6@zejQqO&s(m=Q2Lz}7XH$GJ7;}T@Gu2XamR7zi4X?|BB-Vy5fZq=v{ zQhbW$G8Y$7HEvdYS0>_?PR5_#64dk3ry=i`e}{iCq!CKbMaosIZyX4}cbpnQ(yNVD zDZai(6SG6`y&!a@)J#{dy0|eb#JWd{w$XQN$pcOy?S7Uk1#}VQpG<)&^EQzq5(PpO zK2`iZp~nr^M|t0eS2ZcN?V`y)g$0_iQFi6d{Wk>1FGGk6rBEx^Wil7BOoAA?J|M_B z{2u0XI11shTvSwny<)#7>&q!hAJ>-P)c>0)8-il~2Wc|DOwA{&;^ratsk9-K{$s>{ zZs5A%zJ5GDEEi=%Q5WXAjr$D=7W>K?%4KoxdXUt(+xO{P5A8*xC-I)%X<> zyw%thHqW(PnG7o}?arT;7On%$h7ZH1bldqyRMDe~Mz6cOa1q(-;9~`j=#)XEpEEc% zA~Liok|xoj^8BPZ!UJS?F*#R~K4qN4n>W0eOKabFq_v-d`A2LzBehGJRp6#oaJVx# zT2TK=0h2Z5eUJjLk<-a90?9gGp7&(9dr7_ckTxLa9-99&?K%jr!lS`B&rSI!dHFzH zxj)N&x{}%QPYCj>K-_tVce%tD*br@IbolWPglEUcP0+|hx{4kXMzrWsiLPdpJziYi z#r5cfxKMt<-BY}d(MIRa{8le~I==+Y?>OR@Jn(3i@g{Ytn{+WDqi*>6GX`;4o?BL= z>nTkO{K^4kN|fdjCY7pjf;umjqo8m zMFsFV?kIR|^e*7X`91Rg$KBfm$9-LUVvr>PAVfhRNP-kaQ7xDNAsPTlNzbuqnifTn z5^a#8NQzIgEc-QqCfIVL8|p?=A}dvKCX-bB@-;P;n#JVRlq-u^N>a(IR92Z;8F^Vv zO=XpuMYftscB!c>yv*-+&i(xV@BgDI`OVANC5Z&O?>+b2bIPL3(}e2(Z)Zt9(gq?eYOFHW{LUN_PSO$E&~QcQP=p>enyjU=zIoqhh4dYuIvg{DuyH z($)a!8+`;~RvXtk0>$1}TOc|)zK{5wl3gJ3 z3q70^n$~g@hSEc~a^CN=eE9(iUhyV@2q_EW@i&ZHNj<~<47`=xe$*}6U=@}?ND%5z zB>q{A%iu`p%9vrF8jx@UzLMQGw7}%LbGdby9PQ%>+AycjkV*3UjJx(EqmOWed{-%h zCW`tWv^2r5eDX5Gen@gwSGwL+W8mv^5WW#Xn8U^Ci1#~-1#lAs-$pznx8+eO@6zQp zCZ(kBZLg`@r0w0dam(aZI1Zr6$5`yeb|+MBY2r%s-M!t}>#aWC41F*tHv=te-2rPb zz%2e8`aF_I3`4tvb?B|z#gRqsxK(0nEAeIe67uogXHlA|Od;`=a-(c+?NJwe+`o;yR;Fpk!OU-_fG|+#WN*9<3YjV2C$$VZ#cWNh9=IMf@8bS>zl=-tMPSf-t@-Xl?98}ah-_sU zWhI%*n%5$B3M>|tCSahxOf%r-^?)qV_^K~*4ctL#+MiFwC5%0}1xMq+1Q}x4>AuT^ zls@?)^^)wdyl1K!t~mGw%?Wred4GV_v*!~|RbDu!doptDq;Nf~##(yatzU6l2Qqo& zy;mc)L%C3Tc=zUBcDomGpK8P(5>v`>j2wG@9vU+r()<|ed$>ab zim##>$kBQ?6}rtrG8iW-ug}n^q-b!H5{Vp$iit0WKB&dwqJ!D8J_2|o&zx}$t&WJg zLvWt)Ihnd8*}~U>PWh6}%9W-hWk+%~9NwP2+}u>DR|-VUD)Z7cShSH138Fw;qKh?P zFRc_W-S}$s7RukD6$VkQSO(`OLc85Kh%yhf6rPI`4S!^)*)vB~ttbxky=uTt{~QP` zcXy{!a8M7!(?x_0hJb%#r2uK;j?$X?((f~ilw4hkmV{K}EIu^MV8*m-AyB&5lIYa2 zlEi0Ky!^3Xc`A>cm{FJRwqKHI7!8Dq;4nL}&aMDzpqGAqSqvd&aM9JHT87moxF{tc z885HWn}$cdjjCZ*Re3c-vUI<-Cm`ido%e*ca@dV=*)jXhDdd*hUK5fcB??zo=9R)m zO~;m4lnNUmZ^aUAc|ygu2zkTtw1=`r@Nh5-(qhz8Fsq`kqxXIeWv8M@vc=`ywPL?#yMUQ+~?ZIbe2U|kpqETu7al#7MllBX-E zm=u6ddV@>Sfq=?YMXskq#_V;ZktnG|sgPwV05j?}Y+?CH4J-0y8`+NCKB~3SM>Sx&QsO9iE^uL1E;VDW z#id=iOP;(H_9ZC0TDF(5jtn;DihZ*$+=lm({aJ>3hm|1Biq|xq96qk`{mM1UeI2FO z^v$w?%kaeR*qZbT{T#v~>ohrVhnjk0h~P2Xde)KM6^{ARgH|oxnoe0F4 z@U{dlp_I2}gzZWspCjK&4^-)Xv-zf0Zsm-*Vm(>BysO9y-VFRvRpvt3cTWiWvOxlm zThlJdfpav{pwTmJd&fVtvJFZcCS_my)^*#m&8k(~vTy$&lC&0u`F>Ny+U25`vN`Q? z1XRaf6blHG>&t9{SA)&l-uejSJo#W50%G@(-#3qfyyAM&@19XyM>zPK$s3@aOs^pU zvc_skPxT%w_(Sq~YSrmuMXT)eWeVwcLp+2E=?G|ulL|Z}PFe=(jHkl=P`xLz(-goU z?CW&Ss?*oM`@C{F?_r3P%Mp%Te|v`x$I_zhtw{olX@u?BGCou{-6odw+-7ruk~zW# zwYAH#_gPc>DqCW7<*RJ9Z>0Q`E&OD%%RW7#tB|5! z8rHQstt}{S;`6NN3u)Dlt;^_AXulEBl&<__R8zX--5~6r*CTC%APNK~ zAK9b{wOQ#KW88mI_n0$7=MB&i)9Ms&jMxBErF z9E*U_UP)WxO7)027HlSAu_kI6w@|F1{c{sXWInksblVNpuSz*+0jB6ptow_E*OyryBp9pakf?0d2gzv_Bt|!d5}P_-={t|>-Unkpai@J_ z-MfYx+6#n8(SPw&0jqWLC3+*(;f$uJ&h;FV%05I5{yJaNIYu+m}XJTAhAYCV#v6phdNUs#a zQv`x$VaBd{0)eY=XMEP>y(ez{gw3Y|e44wc*+d3vx5%7{8QK8+CR-MmUVR7J9r@4t zfH@qDVknTZN>;63;Zm|l$$<_82Z|1J4K$OB{sH|yU1NU`0hFw{g0-fA7$)KXISvuy zZ};xCyYd8HHW2tURrN;&(9FR$;>ELX8r$WV2}*9YiC{=ljpdGuTa%$+l^v{bVp}tr zk>nOdRqOUPl0oU#M0FEq2kHdB8awdFOdmi}x?6AJ$^cDKG|{}q5;NdaTE1fxH@DEF zEsQ1U)L7|QI#A5RyESunSz}$*`S~10KX7a9yT&Pa9D!F8!2O8lXzo}D(!}-V-v3~d z18YH3S+`namEv6U8ee`hQ}{}b6eXg9&a9Tp9^5R79XPa|fVefqut>m?!HE6V4myeq zkdwLhRZU!;gmAwM6=aBfPp0lLp_(wzE?{?HJ|Q0ypS{5h0h6G7AMMO*@52_1?=t~)L4SY_Dl8)vh4o8RH>u)ug)Xl;TEo-g)CdmXzW&TC_65txZXx4G8 zb`iB2?kvj#J{E+x5}6V;_GZSkK9Go{99s6>9Af5V)3i6JvEZAKtF#Qs|Cl8~N~E&N zzwy7!DPe{HvyWYth1>3>TdnTHo}>&*a|YZ6G6C3KNa*c_ zy#Jc8rB~h=``WEM8?1~<p-g#2_sF_L#BslTkE({o^`_IZ9vBoFIhZyWHQ<~RIK8mQ2LE5M zs~XWz^VU<*)(I_xs!NoU&>n>AIE+o+Wzy2F8Zb4^#<-wShLBE>Q`6nL2ljqz1{}$vMPcOV)y~Qy|SteAl z0+DPy1@wU{+V4P*Gdu#X06A;v z;mf8T>;nsvYQO5U(x)3&*QH!Xhix@ZF28=(JoNX`817N<#yNA#S;&EfH)(8S;rm5j zW+&i2uE1Kxsu?)j7}VoU#v^ZwMLb|_B$Dc^sa(4LlU0xxLCaCEp@l_#gBq>XX!y6z z*#8|tjdoaKTfsUN$onmHJu8LzkeJWpWxj^mV_}l(v1*QVQv@iVWJl0SRWZ0{{EZ9y zVud4X5PhfuWj$%=rY>83zqrYm#}3b)lMItr;MRWF-W0XA2r&CqsSI>q-OsN|;qsH35`DrmM@ zdiN~o$=8u3H^Mb~J2l=64Lw@Y6!$xNH2hJyEBJD3joCA8?df_6@%o)zAM0nx4d!VS^R<&7~cQbvznO95`JoPR@V9+fy%O|`XWSA+tDg;G8#bC{gGnS}5;P~3 z)5wVPcNa{o1Ka_6Wl((>c;nTHQ?xhhifycnJMsAn-*kw2{wAVfI14&L8vk3-S~Yt} z7k!=jXk5TiRsnRtDMEEFkXFb0kg;~I2R#Zq(!rU|4sZNV-$IC61|8mhf4!VvEl26F z41?C$0N#>d19V~-pa>m>AGokm-u(S2=$oxwrBYKtDYu(Y?Y5e1l1*U}lZ&lkEqhKW zU&(~}N=l#MH!B=0A{O5cL)}AKxRtGmpO%91T2Fiu?piSe9N|B62hpuEjHF_(SyTOh zn(990UAiKlfbXn9t4ZAowtY?f`pcTv>^BPGZRii0&~wj(1!)1;0HCjq%7y_=B{m)h zIT71!s4!(_3BAZfmG=m8irv>^p8c;$U=Wc#_SG2dz#nK^L2Dg%R3N72hHt%$Vdh&y zbj={@^T+sSLAJh6!z7URw>%%{VxRv)*+%{7H3kL&Z0?!KI? zF2;xr?^a)MR+aQMaYcyewSq_*ir(Zv>ATi0Y?eqpNrvmgvl2A1LMx*5Qp>Ooq98Ud zjYLD4=hIuV>c-qWW1gpMGwRKS12D?In3`CjFNE(S11-_zIOBXgv0_8vr&Os8^?H;#qj#a!n%7G8 zS!DrP1#p)TOVwx22e;|~JG*`gDQT!}Z*5~>5*+SfK98h>w6>VB)wpyIzwdR0$CTmd z2Tuy71L+k5QVtT6JyvzSF``s0j0w4bh$T0x2vMu+;bl2|q0PoAlas}qquOZtpUlX- za8MqJNHt3Ta0$NNGCfcdD8}EJHs;wjKf_qLeLM{ETjx5zORCUsq$uMqey>fDl%_0$ zwr{xd>ZU!FwuQ%OnF0(fP;V$LyOV-J3K^&D1x6w%Cv`lh@)n1ajG0 z7~Y9&Hg<~AMI^aTioz?&?yTU`3YGM8RAH1o&C8OeCH{gZ;3e!pP8%S*s?1oo2+|qM z<*z1M23Jyc@l-C1%yzHlB_6|Wm_dBii}`^#g7UFh)dqs&VPE!ir$HCzEF21V2PgS# zXhMo*hyE~1yV7NOG(CKr7Z$$@ucYLhlcaWsl!Y+e$}3eSkIG=HlD7VlgEKg~pn@%D zHFJ$Exb(%)i>AtxzB^T(vM-OHUdHEa0;tQ?#m{{ALF$f-BhzALJ_7%)Digl%PC1lQ zc2CLk0~a#G584mg9Za8w5&_5jMhgLMbPF699m$Rw*>pDRRdATOkE1mPv>3WIPSkX|?d<6ehW^H~?Q>2r{vk2Cpq+`1x00`EWhqZv^tF z(*V)ujy=_T-N5sH0_iHW8Ys+E)Y%TWoYUi7#>d>y3+U`h>?XBVG}-b^PPs%YigHQ*B4>Z08J#4_XNnmJv46#|)Xu|OhASx4yTzC%JEl5P+@o?X%1s*qUu;#9TNaxYKgWRJ@VT(3?u%(4YB7Yj#qcHr zvLu$cKcIo#Na)m|>PLFv12OI!ce^j%YQY(U9z>A2P&7PusKJ-#6Dnx@1U(BlCRyOg z_g{U(dACN4*znc+E$5;wN4RHA-XUWze;J2;W_#eJsycK`0vSJ#ZYQXb3eo4blq#t5!<{swY!#&B z;iwcX)%hR*_G-#O>6{Fm$Z%%pKs7|tH%+}LKklK(J(*>nvsQ(L0Z?1FSqpA0uVAXq z%w+98q&)9beZ58Z`2D@VMC(GWXB+JO(|&{U9lnK551p6?u3I9k7B52@Kap&a@{|AT z08CF@1p)N6%}T zTl_e{ZQOhO_v<0m-#RdgNDg{{gNr*+Jz$~=e_}Na1jNv?oaIbx-{YBP;7z`?FtHTt2=WojRJTX z_Fsj)-Mw(;3)}DrypIMH-F8b0&fbT?hKBULI}q&X$*wceIinROsI+-!a6~(TLA`2N z%Vb%LiQyVF0j+LOCLs=rCT1VFKyE88GY&56pUY*b31HDge~Thb^(WGOteuo!;wliu zEG<@Zc>jy_HBhgyE`6H19+4K=VMt72A(bkP)}z$>9CG3zVsLOGS+_N?WW8r zLO&D8^_Y1VBJP6N{5t?x6(EiA#7 z&Ez4j!G>G7j^nHl{(Kfaj3Gh`=$=ibvP#Dzy0jrqj~Je=S2+h%_8 zhI7dc%b6dOl&O8HKPt=a;tmnjm&80}zgkkBI?4+CT3!rRyumBDUYm|pzPj_i)Lc8? z4h`y4r@b?11$kB98OwG-OMGY++F&M2-<^3}=eF>aGx|pqY#?p=CdO2WJw1(B1sO7( zC9Sc~-4`b=L5tt}{gB_>uip%sS=|ZxM_H+_7P%@ps+Q3EPFpx?4UFBqe9}}GGp5Gv zeLd(rMURD$!NBLKK%2p2FJ_vUvVsQ2uOVlJ)~t>p+r&@~{GIdRx$=xUW6wG)gR*6$geO+ZUC#RgMR$Tg`JhBoy(w&sM1_-TC)G`#u6h)y zKajJ0W(p6~zc%n~(n{rp1uy@J)6nx+o(-4?bsIqDsPj2-U~crF5{mYf|MoHT-=Gym zZ!mM`g0eEV%CxKkc2Ty_Z!%9Pcq|}k8e&A6xd%laerkJ7{VU;~>S$sryrvUbXOljR z(6je&%zi`a)v%5~bl6=ANzkS{UKfdB{=$W!ut>3 zv7Smz2(~Bn3cS^He2|El;?`&Crh0~CCBNsX>EiaTHsaCl;yVofDxKa1+f*$9YJb*S zZQd@9NQNK|YS)Gl;y{_0C19B>YV+x{6#NW`CO4@#Phaek#DRVESJPHs8aoZA?>+o| zXY4gkVQ;s0x0^eSrPHhTws#~;W=+V~V23xd>^E z)3QXFg3!#b)aMHSy&b_x7E-qD9QgK!Fb(Y~HpjlehW-@Kt$lcvN7(%0e&rE3LeG0k zwML7Yk&m3sqKI>VSJZN$oty)XM_UanzgRoi_(xt&iBONHn{ z0r;xhUJ@fEJB*LbN6xAsU`qw2jgnP(#|HY8ar{*El^jK{n436+f1jV?GPZ*Ex&Nm( zue`$t`svPAo=49N@eWz{&o! zA)L?MydhxjbgRJ}hvoLipn_^2`U!%+K~bxQ;x;q~kF5dZe+0$ty8^}FVKo#>IL{Cl zM?V$KATzB>gj|R=|9D?)1Xzn^$P?~^SJ{f=5_{zhx9_$3m>v7)VrLz56*3HvGSFo8 z48QcT%ZplAg8PtM_U7;lWBin@{mehdFl&9snq*9FV~<1?l`1RSrTU6`RW-iLYh^Uow{T$i+4;N7KHwAxw7jU>H(k&eRRS;GUu zaj@n&z{h=xet%XzVfQZnl>MBZ#v4046R|{NP51Yh;;A(UGd!hlrp9~cH|K-1h4|O{ zL$CtDpkKFYwQD7~n}@2V_$xjuai&QkOxot%>&Zw(VFm#8bmCS$8^!Bc+|iR_SG3fm zj%9uG#EeqCuBaIayn8>Iw+q&|DfqGl3ZyYontE3FH@-$25w)lF)S|SY{*_%hDR-q~ zfM-=&BNPgWQlrmZAP1pK38iM(=^FmgR26=Ld%F4+SuM72xFRWC*PNF=2Sqf_R~0AV zxU`q2|HI4DlmTPVz1eT_5n$1=-MT24s8$i30hR(&7}PYdeA!wC8E(2dwekV78|M196G=_HY|t3=0ycrM4+eW*;xOAiI3=lCnZ<}LEW$g$N-VNl-e`4(?G+F>$QEGW%GgHIRoY2T z1>ri|XadQqrpd8jTj7+l7Vmc5EIZHP60P{!C388R0RBh<&!reo`Dj|9tYXVduugB#ZU}ify`Oe;NO38wa+U(8H*+uMAsEPPn3LF^Od_Tu5uo_ojMj4Xyrq5NIlpLgEta zAGW8?8!;u%tmIo&s4DsD4KNHFD&#q68Bk}jkBv?RThm5OMYR_GX~F0^^xl4fzjg4> zhP$Z+YL+;|tAAsVgKtyMJGgLnm}T<9!pkOqo@`_BIb?)OJ5tg&n=X8N{5 z!$8$`RkGAPNww~>Ji{N26nb8iBbrz7VOU_M4hN!y^i0>2D%q;w@z8u`^!MEt70x5( z4!(Om)g=_)=!tsyTCi_N%Gv1U+r(a;lTd9_$Ts8?{4TQ-G#H-#1(iUSf(pW{UJ z(a!B5=61(Ii0;cO`R9m9JeMc9J1tQpytyIRAi$g4Y`BP^;f~LFC>^6qz?YsLx9CV%D=Wud3O&LmN zuknZpWcT%Lou6u~m^XF4vDUiZ9Cmh5q^xS$O?hklMCZKw;W~WB{LzO0(dAxexZULs zubwyZ??!W5K6Ss*LnN=gX@7ogjUU^^EL<#khyQ8x?i(-4l!d?98T1-Wu>CDet?xc+ z^l+GdW4FEAY2E7}8P^@BF}3>uK0F+#fdndiH?&lY^A zUQgBv+FthJ6vCE|=mz1{+(KYawH>@+$9t&gCl0Q;&-B@O>*3 zB;^K-K#NeUgVOq#_~@CS!rd&R^MRdrmI`b7VBvZXw}ud1x~B%49-u9iJX2HsU3&Iq zRm}i{rUv-1e&Vzav2&L;Huk>6}5v{Tqn<_l#vo55Xv>S;hqRe+J-5O2?3 z>NoGzIO)2f5ypj8bh6nl1FA~B8pQ7zKcN@B6q&?{b~2;N6LQN%nu(Y;z<8thBOdn< zF~^a?MBrOfRZIsSFPBz}peZX5Maf zwrJ3;Tm{v(2M?;j)7gq-`c(Jm1DBK=ci&TQ!+-D?qsUt|SQWcC^Ae~xWEYx1gRdsY zq!Og3egoTA-L%vuvK{p-3(PwEdD+U`sJGbA6!jB^B&-gXYDA|FQ(Irw7c}TyrPrjU zMJO~qga1|*8Q!gJsYe%T#ue$pDkMOPXsn7gFmZ`6LXEhnJXWsmlO~6(?ojM(% z%4zGlB zEIwk$<+#1QHiNK_fSzSnn)62d~st zzqzf}L1RfvY1z@GvDIW%ZR1R16JBjJfqJd+#XJ3W4GrnOy~KMBJ-}eFm7- zXt4^XB783wk}&3x#kUBgb-npM1~;nFwfy1dcoe1LNOog)$^0}po_Ue6ht*8*ka)?ocegcfe1g<-*m8hI-0g>&7+-$$ z{kZ>~96!dGhn?nDwecUYCE78a!z_R=4+E?Kiu7zcV{FAHroOuEC_LWtsh4oD*4>4s8Y6GCr-5jpw??0#fyXNh_JRhMxr7 z*d6Mv^=8B1cvBPu3_?Q72nm;~D~O2}?Aap!q9%@#MRYVryJIE{ies}JpZmde$b+^b z)<3llYz~>IP(yjYD6NQXe!opkE3%YmHVAn|qtin%FMqb7HMU~1NPcDc<*^%_m3SJP=>amW zA@R<|2~0M{goPTK^e@3dSp;U4U7p@Yi!5ztf6C(PC1A!zdT5wsKXVSTp@zHZAKS>a z_=0%s4jai62fm926Hs7y?t;4UsXKt?%NhFXI1kbIrtu_3TS!H7VngJa*#UVnGERcobL ztduDack4``HUlNaHSjV6iKW57Y|g@zpYB$T-f1ku*eTz8gqd5t;Wld*>n>qa7(7m% zy){HJ|OP7^o+All-HC6c4_3I>W6yLDP-1Ri9S6EaB7NVt^s2 zOSt1_?9iJSBq>SvBEGT4l8GwS4MWsq!xSIZXX0POt1J+jzXIm)>NbabWh^i2a-Ao1%!In{Z@Ao!?hSM`V+i^U3XsA zWG+hh`zUttl9pg(Vk+WUL!yGgx zBWTdwAN?|=%SjVn5H#h34W`M5sMXim3IhpPoq`P0aK6bEHxVlw78&8l9RznX0b!mr zB=2gj^_{W5cGU5mKm2v|7p9T%W*sLOS?#_&f!^UOjfK~_!hW%1+8e%c<`2xbJ{I;s z2H}f1G+l-Eb4F!`vg2KZ>`neL`&kT4cDPIW*A_jWq&I$SQsszuYwBt09DkCl%Ef1F zg}GL)*#tYUA}VS6FlrWT`yjk9eaE$IM4U3!08I-Oc93_~5Pof2pW#h{jBRH$G0O6& z{a*`DSdgOul{O1AD~u>z8&YQe8UDPBPcdPTN#zzJq!Y93XN`Lyb+$QbJEzY3#rH8LBDzm_F4T z!p*V^J}?}#8E-bZc<4vk@j+^xnVP7*Wle^;Fkvl0t5Zvc__=nlbxWrSkrOKwQJQF? z=w^6OBlJG6d`4632V53OfqhZq^7q~l)h$KA^YYl{9ZvTnrA?ad%`cprPeXUCV6pIO z4x43SOr+Oi*%p;GJ!N7Vj{|P{CfrG2TVYF)9Q&9CjZ>s(`@Ki*%lmY=2HFV`jF;c( zH+LSiHwJf@|L9vF1euG>LL3^|l=XQ(cd66Xlr!};e8c7TbGfcM^2B#hW4$SlHh0En zFAX<_k`7a2fmvi%lgf7Gj1uN`3r$>xq<}NACaO4OfLg0YfvHUpVS$GRZ(oyvZIvuz z%HEg=HUASx5J5Vhl+5j@JBKB1&^T~WO{x5@aky#0PS^6E;9zX5)~&nD6f$c}c-t*8 zz9up1ny5JnW8F7xq)(3O7d(Y-y+byjB~!>oJLaNvHuN4!o01k@LHI5wuKgh7Kb)DEdMSpnmUSKX?I*7=6uR{kA|(8wYfu&lYq ze#tUp-h7CyXRmX}M9n4Mjo!egS=Is2)%g)Sh7%X&4s-@g)C^}mg_w+G5L)ob#@I3q z8T@cGnu#B4F`xmh7CzRM0uXTxnszAVsUre-Bf?}z%EsSoxJe}@h4?(#Eqh?0?R(bJ zk}l&D$vN=RsLc*xjLVf&tOUh>WjF+;zDW-m38 zBQe6&2*B`8DR0%4s)}n&`;7o31l9NuAbUq=#OxR1MT6amrhivlQhd|a=Bsm|Ui}Mb z51<7Qev|t=1m(uDXn@E!>(lFH*dp?DM|*JPF^h4HS=8h*`$PB~r2oRDNRrc zY3f}OdAdapnnhi?FI0k>P}bYvaAJen9Q&xml+<&OhW`b-{9xFAXofP?5L)$X9&0R? zA6-7qPH)P>7`W)XG zTX0``YJnRbzP1e;CW&?J1lJMa!j}=XGj+=xa!o_U*>y^K&{eElq6e11vlQ`u#>T2( zJK?2H6I@pEc2wV~1LaZR`)gb{{X^-?KLWhN&gZ(u!0@zCa*(%$>-sbaO7bnkI*Ys* znj1}{o&F!61^eBr9FGe3?t|t%q`I;eghnmuihODZZ{r|aa`tyk0U|OHJH0Jw&~)0E zHl$5$o@5;|IZ)i4zjRI0L$s1w#JJn7bhFT(Or3>(pRxoO{@!Xm@_7fs2?GL8> zRS#FITAGDN{y)Ub$@+@8ml_4Caq-WZW??qyma%c2u{-1!Z{$jYEkZ z;X!YRdMkWXr(xX}@|2Ngh4*nMaO&rX4w&H0SVJv;H;P;J5PBl^%rS^O1ZXix0XpES ztDu)#0qfQ~B}92hvM`WhQw2gek-Mvtd%xZ2H>HRx2^}u00=oU;p&~T!bh>rN^@;N} zo`{}4Ba}CrnD)}|23(-Nno?)AAAnP9))T{3`T$r_W}h-27PWZQ6}{ueYvV6_w0Pss z4qcasY8^QCOQ4Xg#^57ysF89;d4{AqT(&}hiPrG^~EXj`qugWYY-@ht^( zKI0a$D78gi0MQ-)XyhQ$!XvS+Nh?Q7w<(d^4+X6&uRHp5A z<)~qLs1gG;wZvWn?+Nv{UxGz<=I@5el073W^pQv;_FJWI%~oA8W>4-Nvw>_*Mbgg# zl)Jc!z-K%})iiuQ(jv=|RiyJqs0#GT(NMJ(L6Uk7S{nZZXtFRpIhrm;z!jm1uZgcn z!!4?pNS=bDs*|3oz{n9++v&GO6S3|eKB4Mci$~h0!0`<3h}&{h;yrEB9#y5NhxZdV z+nALFw*908$>Ia%TI#0dN1L;oje4@$PNQ-@UN${q@{Srh$u%W&r%B4 zpoAhHMmgX`?u+toJp;=x*D}5QE2*r8Qe2!su462iBC+J~Gow>(y@;rOG_%kQsd`Wa zBUgpN?3Nq9((fDZ$!jpBpahFCcfI$pb%*U>-ex+9SZ_8mrBoz7V?L_TO z>)ZMCwnPl)Ie2u^^pM6D7vWn;TjIWiC24&N$-)3BH+ z&FG_s?eF#*zufE_H_H_JoCS$7Oh|Wg)`Ks!`Wu=Nn*9Rjei@q{r)Lu#FV?27cJ{tx z?f;++(Ix6c_UlYIqRnB0hbjQ#We(Y8cF_kJm3!!pq{&d(#cGxNWxq5R>DDfI>CQfT z-A3x!Q&~dwB$n(l`%Sf)+^+jFtJAj86gl;cwWQsfJHM~= zkv25mfr`)lkKn3*eH(4^IxXXP4uU#t#lws}^_4P|?A<@;d9f{BoDJGb7dixSW9z|O zDzwALVG}1}vauf>QwiOqQaDSzIi=qltvOxkQVb1hYGN)nzRt={%6`|ys&u6#ylN^! zo>UX42bp;ComrRhtKREciS!e$?jU!m(aHy}!*wK=I>O?o-Qx5qQtr3lM@((xpUF#! zjqncHUqRk~DaJIcMa_&>Jo{=<;RsrTIzpYg@rS>bn`nzGvUF7%n)XIrTE1Ipzg-C~ zv|c5?XQV2Uu$4w#OX10lTVZ2Bh?WP{2s-ADLUBO@iZV?ci0(iy+-fnbR-aCn!S&ev zja3r4Wr6=C{M=r@FF8Je%DVd!W?`==mgVn#)oLu6tCmudQYiX8EcYq^OwEeC9I^1c!HfD0{5Nn7@3=4Vs;y-+dZ}rDh`4d(y|;i^#nK zhyU5Ttk&NM1yLng)mitjtQ$raYss`JsFFHB(I;6vi%Mk8l{mlzKvca_`3Yh#`+Zhu zkee|fd7-6WWNL%HUhSUb_ng#}$kK1q38Ni={P)J+WhWo;;1mG+_s1?E5W?|row1AZ z=N2BtCa8&jyN4AwLEZfG4*sn*LcBiqx1u-<#uZ|f6py}uwfJ5BH(Zasq0GMS`mbG} zOa0=72d(DjnTr?h^)??}ys&f8Na`pu9QAF#aAxP?g){o`GqMD!X6||uWl8;HGQ?=- zwrbO#>fBe;=gvyB#y33lN%$tn^TG=(ev1baXs<#mb1b~B6cC5I;tDOP?9NIQoU*TZ zF6M_{dbMFXub7lAcGBr3o)(HxnAAzimM>RHe3-dNB`I5b$?;!W7@8Z`Pw6D?u9Eu5 zHrk4qQj)UWLaf(N9LkoesW+4@v05pnL!49!YJ&q2)MeXxB-9k3Ws6NB=t@%aR4{p$ zDZq&RS3S$u4b|qG_9smmaCWbh&h7oSqceCA;-N{?bz^nQpq)$FrhZxYzumHw#o{L} zTd?7p2-t8uQ^qvyK%A$JY^N`whJOXdVHX(&Jt=sZxsG=2Z4?OYwgO50eYYfUpI1bW ztRGO-$MTMLi4;|~+(z@Vk*OFpgORjNO*GOpz4^t0&2!wO0*F@&fN++)U^Wc{`+Ucq z-7rXIo$Vnt%v?tIN+vR3pvZ39xMb3cv&}LKo9PO`H94&9gIqywqbapYe|L1io|hZO ztqXX35b2eV0je+!pXjEuC_E&_=GY{A={QupS~8-P-gq4IJJ2i4q2ZY?(Au(i<#DK8 z(Z?T^e!MbkXqtlt*5RE9=>Ig>Lduc9B0fJ-JCoh1==pa$ch}4kV_Kr`M#O`pwm1q) zg&sNThMG^Mt-L%r956}4C|(GhV{Wa$!*o_yin%PTr&^h2=P}!k-Y42xj9$|g^Fsdk zWo;Z~C%|Gh3cAf8%Cln}K&kCY)Q!}~r^F`fBXH&WXN<4Y+bHZg{T1S0Qezxh__%5M z8_qZ8zA<&#O;FZbXnl@5W-C?K(SOpKzV1uUN@-}(=Q+{g5im?!9qwrNt>S zyc1{oMt-+r@@>8IOsK=Hgjxw*2`L2VuTlhvAJd*Uu02i8sMRhM>1@#yWG7110Kec| zV4tJcf-%sAk*1cNLDPyGxJlKi8eyfXDD0PZ|2@fmnFy&Z<~gel5t^-sJzRu#wZ|5SJa%wAzK zHx43%8aN|LAbeB&)|MuUv^AR#mi4+Gfgq!!Jd2WI0_chlf~_-1e^iQG5FJ0^{n_3W z)i4nwHnUmzG9R(#@zHYyiQw+~XSboR=U{G1z9-nEEFzT> z28AadDAAkF(}d6RCoa?_#`j7GuOuJ16P@{>8@xVx71=%j;BW8!x7$k3k^qZFWRlQb zd?#-MYR*1p<3heAYrJ`hN=TSJ{s?p_^#taG?j1U)zAFvwH(L*ZWMnwdt1Zj|WD-@* zr{BxF5hR+npe17VWfY|aXK2a6vlPG+csB&BkOWGe$Zy0h(oP`CXmoUPo)ytpPB#AGhxtSf(>=vvQ6$H~PuRPMa39h?fm|7j zspCC@_7bO8Tb=FQRSb;+Wgu<5*^ptZbO*zAXFHKGc21s=lN)#H{3oy%c2kjV!1??yEe?uZ`hr)e7$)4*R;xebyhI`+cWqKh!-^bAK`7HyI4g}5I>GEozX#7E-{N0sU43-`6epL?tuw-JMD!a;{+4^Hi)nZ za*j*=4KX=RLXflXHj_H7*Ndv2mT6>D_K%|J%JvS0m{v$^KI%5NshM-#LtJ-FezL)w z->dCbN9~%EusU_thgvoimnECPEhJ6WL?g)*DHLzg$RNWickI4MzmqqP*mX!7W9ltSEkV!m%%YTqwexz=ueiU<$0bXhfS{p4WOWi%)pl@Q%z5(A z&3HEmibYVz<^V$nfJa-suB=9}RkE5On7`L#0CtvP25hXDzLMR^v<5?s2>0r7iYv@_FZjI34!5zB8;MV|35lxm0afEh)!wppqVHA5 z-|(k&_mHFYgucv!2AtlHbatI|tIw*z5d}zDle%r#H_aikZIL|ywu1p8zccosJN8o_^8F`2^pXG2M+F~Z z$1o)|TTV`wAUbKfuTD>0?RC+A71iDt11^g0k((%K>h7XTz-?H78<;a0L;(&(8gF*B z=cmjtf_jTBLPT3tj^-lnx zDtgv+%IBXyH|+@O=yb|Z3&=AsdNr8Q9YuHWGn*anD{eT2gpOv#q;=sM^UPQR{GG|6 z15R7;r?9t+s_jF0wcJl3kKI!tlxnrAkj|fpYp&rW3QHb(?yJs9-s&|NLO%mT_g!J> z;^PeZ1v$%Scs=*wE8&~r***gnNBvIm{K|j5-joVq6n;Cu zD;T}Ma!|!C=I1cOaNwqM575SeBmxTsT?_{(8s@Aj{Gl(|h~icd8zLw+9$V-GW(yOS{SrG8{Yp_qrpGy+CMyyKeRXT zY5I=u?)EkG(ME<1hQsg^_wm_$%^iWlW;hyA0g zgzNi(tK0GnLc|#Zd>xt#kb7tDk)H}(*8TWpOYnUI)dt2$Dn-z5#CBIUrA|mPtKx_5 z<0%&GBCl%>c&uyteAAxMfR&H9{KD0;Z#+O!s?b+Jyy~KtL(v#Sj(Z0If`xjjv?(=UdT^_3n5vQV}ZXfAe&$o&A%ruSv~@7cEXH*t8tm9f#-$p*V^=C z0H?TiLJ6Ll#YKknK!`ZEFKohDb7vN(ZRzFD$aE;u8fgwqQ5}6vp}voCYU8zd;btHD z7h=8l+gmQMI|W6{ydn2J6k9~;Cr6P0`6+}x^F$!aGb>c(>Fm2=({y-$UE$S`Fk}+T%fLB<-w@YKo7SXlm6rTG z2`cC26`!(@yL!<{+}b5xbAGD9VNo!XA!&+xXRQOnUEQqFwM;G%BLLNlzv&i_vzV-; zF5mLy{FWk{MBdc6wppQHi)#skx#LXUW|S5I&+0?e%<-Exw7m8<1VXDLwzKA(sxhV= z7RWl`T5xdeW03%RR7$bWiFghCjU$2DtwE4#Vu_Ku!;Z9MqORc6=_hYNKH5&Xbr$@c z$<3$It|G?rFDh0VN2J0=n$SK_L}?ck!@Aq7!bU}B!RXaoZ$nn#Iuu}5KIF6g)E8o- zoh~SVJy#vFKDZ1wpJet+ILfE|DQCz0%z@}8N+6U2)H5WD1I!a`*`Q89>NOVRXB)d% ztJ4xbc-SERIz~lhxKN$Jhb3R9B}*Hl6ua((2Tb7t^fCoo%-E9U{{Rg}brXsu4IT5M zsH^7nmO<{ic%|x%jJ4A2b*Q0~KZJeBT!#fEN)(|6t?jd^LD_;3KhUX**>e7R|4Ia6 zc09yJdj$$9dVNvX%qUoR9ncZG=rN1{Eq?jgu+2y%)kaSo_zqRhQtDXReY8V`h%DTy z3E@zw*Q%)Gr(^2{i^TCGh$Q{!C4qv*o+1$}ad+Mh*%>XctRXm}y zhG<3l{&~B*+56mZ9Xq5)9Y7WeFZm8?OL?bnU_s%hMJpb6`PqpF>WKH0TNU0)#8~@# zzaR1u0`m+yi;hyY)7eNPr(g>75B#|pTeFuw9kQlEbU$)bZP;0Kq~*+od5)9YBFOuB zA=sqq8WvHZe_a6;*)W@0vRnk#e6$*Y%P|AD^5J-8 z48-GrbxP@?)z4;Drz6EWSF9=(y5@ps5bQN*-0Stxg}rR2Z#dqf=m4u;HG%Yk&g{@Ic50s+y=sG02(of-eS<8AF$_~xw zt0albH8jU|+z}DAd^D(F#i~0}98)BQiXXc9_ILYeUs<*}b-i$^YwkrOuDxCFMb8En ztYPBrB+uOehX%u8xoR0W$IujF2mfc15#vg!BC2Uw3wdMJ%bf_iVQ@)R5UqUlI`WHd z3YJI`GWh%2*scs%)~&0zPXi)8_4)aq_mF#tE)jycI%_zQ;7~TDYuNVOMO4W9kF-Cx zz_==SWxM|aDQ(pDpL`VEu^(f8@dhwu<~`tVS_*k_>~C-_)F`NjrF1nJg9{(1mOARU z`baIh=n{PSO{*!;6Gm?<*Q3|n6iPban-_K(GT7nA^Ba7K{drVGUVIP9t(YFm!ds`m zLhXhi>klw)7gdn>RR7FHW&)e$I}mMltQ`~u(c2s6Su#nyJZJQqyX}@LHk2cAh?$BN zO)3Yv12GI*%eu)G``P=!k?Gq}M23vlHboNiO+K}Z&uJG)t3a#6(7KGhyP9ubin)Pc zukQX7){N2eG3<#33gaI{-=GC2txRv~at;*2bKMQe*@LHkKtC+CDw_HzuPo>P%!Dc?SmshHv^apJPjf~%2cb5Tistt^{O><57+t>i!v>A?5 zd@;X4K81{6IKu`FX+NC1iUu0*SrSOTPluJ+8|F@Vzn(?pRxDvG@@h13Eue zJT5K6sDQ(zU{IQ`JA6skj|P@CmQHgRnG_x7Ks{e@g*D!oL(37fY4(vMX=W~p%37Z0 zUCD=hS_P1-OecMB-;Y-Ewh!$p+rgZVUsYO4o48u*m2fB8leUW+0xTRskOZHj-03-C ziJvlm6^uiK3;U3{3@Cb0f5yS0^2}cE1`_ZfSB>yV4>#~{F|)ysGu(BEyhQ*j9UlyyRPjGs_nqUOx3q3L4aRs2g36ti(xpkF9$ z(;>Wq-AR15anb-kVV-&)n#daBnYZLy{3c6(bZ{~C2raa^CyKL@sz$f-*RIVQHGxfU zV#=NBy+&gNRg>G>z3z(14j*tJ;*Zy^-D>cEYpwfjX)FkVNXZEMhk`MhoQ{Esnpi%V zA|A%yzjEi&&W`v={(-=qKl3gg8b?DGom9_T_sr>Mx&moPqdI-^PlA*0-rJ21UH|0L zZVjiGAg!P3n8U;0kMPiy+uN#jev65^cW>7of`VK+E9k2`=5KvX&(2s<{@lg44xI$w z7;10P+!6m>cSNcLB-A?BYmZm=s$G?pc>p|ED>&L69<77i&h){O1WjG5)z$hOOyATR zGr3VNG;HOLx`d;CEQVTOmydlSKh;u&PoOE`|L&c=*!Z}o*7_%nkIfFBKw+QCt-T-B zgtsApID0LKI4q)@37n^5JBAPJy!r4VKMnxA0L?RkxIemgB%HE~dj~G8f9YUO=Yr$@ z*~fj+0~+nTiz6ibPxu+1I|VzHRlomI>He$(3S3m-;hD{4Fckqnqk`g{!^E3~+b&jY zJJ@)D&IirxsafnvYe@0C2vbl~Y}H_NCv;bTeDQ`YNmQJcp|l~jq-t#G88Rnu%f6If z7FJCfWY*#@LfTQefpO*5m|T2+*yiwv>=`GaOaZjgK>W z`XuD{nqPWE0z5A}$NN$iEash`g;a35V)qjAI~#1jh}Wk&q$R%0#Q}hj;vF`VM=rd{ zUHA#^!K1(lS|m7IwMHhWMx~}*_Qipuo_+ccsWW#`<;HLK@qNA<-j)46H8J&WVDwDJ zgW>C$KZFMYMx3j{Z6QTTh(cWrHleL)jJsV-Q^Gv>Wq2emhUQ)86n@@EddW|Wzd~FQ z;lqBIIHpelqq$Lb%vRw+8BMKo&`;!`u`Ea)6>6JGonrJ<~^_>osmUVHZQ4iiko9uZ%2DKu65hY zYi$pVvkP58QLIDf4Wm1#s+3IFNQ#L?7y`VU1UU5esje-mh6Che49I)lF^8?K4w1c_ z*OOb_1~wF5YVc|mFEyy}-d~9~Y;WxS&+rq$4LEp&rlZYA*}cvt_qu~M!^lt|likr? zjdyab>Y?}-2$`98=}R-$2l*(H>I z{g9!=MjIM6EJl0q0mz)9rw% z(u-kh`1pIf<3l+&cedTe+oH1Ocem@SOUq-2XZDtkUwK6yv_?yqA(daT=qGk3G6a58 zUH5^F`qX4dhRc%a9KK8NB8E6T=Xbmbd708nLK0O6u&`X1)VD7~dBGG7#Rsjv1ICWy_a81}4FqIlwqAA#|NUmed`9-{v=Pri`=QkT!tcoEHuA>j zX*6je!l?YIG;I_SyyFCOUfm4Qnq?qM$Zn_ao=w4c=hX`@pjFQ15PiKPM(L&z7KkQR z>N@Mj0Xcpfk~?p2?RN?d!es8llOHfHjC;(UflYqsU8^$74qLGnDF@lr*zhqHn5t3H zYnM0m&@9iH%_VjNyJETHCl?BV^MsuRZU#?h5p-bNbcKf9<>ml6Ba+lH12JG)LIt&a z^fNH*&R6aeWcDuxAtUaW{xTDf>2ZMUb2l=vDDqRx!}PZ%@f~rGxbI9Z8sS*H)wF!c z@(HgtOf6pT4VruZqe-z(?>L1o(^`+R0@QGB4vY8X*Npz>K%H2GiU*^m_*=#CqKQR~ zt(1LNQ<<2B!W_f!DgzrmeM&9!+!SUkIwO|wc8*`_;38h@MoW6}(B8Ll$B6uk!Puh^*JbI@ss11puazaPG$pjVQxw> zHZPO{KwDYWZL0@FIhXFJM{}DS1GjkN)#S$66E=`kfcm$wdAHSzxvl>2-=TP~@rQp} zyw_hD6(pMunMrj7#s@+fY;DOfnvTA-z6wp)*Lbz9ab?D_isgZ*4nutJp{OkyeqeVf z{-iiQ<^zFuHNlcM_?Rgn5Ty5;d%vgMjOvN|G?bwCGwFmMQBN!~8cmNmgqx7&veW8r zHkE4e3zrI)CO#_BG&QQw!oZ&zC3TK*CUcC|7tM`bO=VTRK*4f=7hfBhKUwxJ*e5TB zZniFUI7bXqss%I`H3c<&%xO~;w}T~`V~^aI_n9x3eRmUnD^(O@D$s|a^EZDjfJHMNTIH>lLZ4wGC0dN870IiD_4s5Y4&U8YAo!EPc{sM_omu&l{*_NA~ z!QD}W`zl9r6o0GcPJ^`8)4}##kU#dmhx{mP4R6?PyEACixVg0o5WH4lm3{KzKSBbk zKxpp_&J7xw>8j2s3qJ_#bg&6OI zH9x9LkZ3$AUdzLw#cd>vDE*}PWnUMvf-Hzd!>Fe25ntV4cL;7cR-B~UJo{Y$(aRSWD> zC9F}7esDVnE}@?(x--;lU2HWo^{L27McG10ExBG^+-32z?QY zudof&Kf$Z>5qJpOFS8X+TNydJrbSWN&u=j)kQI!hUfVJ40ZOz7ezb|)KcMc)O!b1cZM_o7)Z&sU0h2#YeZJB*MLoaUjY z6N~DT&oLzj{GkAN$7zb;{y}1k*wmqF%X9?di(wJIc)WGD;lW_T0n()Gp3=63_mkLvUpb%MVu)GZL49}P4VjU$<_HJ9Aj}SM{U}LI~1?Wu!usfd|WY3S@U%; z2OwI}O+`%OH4SORR|x68wSMz+G$rUtj9`=vIBcMH~QAbcG6ZB}e`f*uZ!e-iaNIKmH)kEnkEe3Z&7c60T$B-7O(NQa4oO(YoPEg(h9(p*=v`_(Nn)gHuL08ldZ6U+x9;C(A%;{GM`{KuS&)gh+PG{72E$#z zi_~v6kYKxw`EU&Xpo=v#Q{hKqGj%jgkYKo4tPLqtMTKmC?@MWNqn$dG4kTqEO_t1S z|05KrGlB-vK5cq$oy}g>afAIcs0!15mBm!`Q-mT&7okQ*%|8sKnUW3Ql@0~oN$S3Q z9@b68%VW`iLcFm4+M)y|j4iz~p%@?t<`Ym)%suRJa$gY2Pvc@gz-L+$_1~Z*?{aT( zh+8N=_AGE1=iLUp2z_jAQbzF#oIBjZ-r3146By*NXl8b#Vg99j(+&wyLJuDU<$NmP zL_cZCozXAr;?nvS{vO2cNd1R0QUoqbi8k5+Nj@LEi;+ey3MRFgtrb6SBn|s<1iDBb zRONGyH@EXKHv!l9(8OYps*N-^QAZ?`7lxj=@$J%|4L-Mc=?iRbY*^I3ya| zJgs}w7{FpWMnJg0fehCbJ+>&c#~)o|*fg2_4h}J*!4eudED6lE(Xg3>w#$nCm!IdS z9)Mhk9NO7Lh}I%1n#iq8Dr$` znj)?#CB*4tpH9MR#nxp!kh{p}6FA)7b7t?pdcL_qz;YV(l4 zl`P~m$@pzl=gcV4fZLPl5tHnk*e}wUe#@=`3-aoMOGmy2K-Cu2FX`TA|+p^-r!Y0tA6an8nXyjE^AAc5}5wMCjk~h4i77iCf?)Xa`(!uKyh8;y5+>Gf4~nmQ~GH z+SA)1qoEnR4FN=}k$I_@qh%o|}K>zoDt&TN+>W5=AK^WSRec zDF#Z8ACN+GV}m`z*u4anD*Y^QNDBqH7ANQw6*f3ANL+2W*1ss&>g${oJ~g`A+E|i( zH>j&C36`Muzpg-U8N%p;V48;d8RN%9q*L;faqt0I!ea4X_`Q4&8D6nos(#l$v)?39 zZXVH-U>w<%{kFroHqc~W8O^l}?!>g8Ddt&APW^Lxuu5?; zs5P6b6-mcypd9ss6GAHptR)`8Ja?_jlzn;{nt>Tz4A~lxNL9!>^64*OPY3!^G)0e{ z9_WOiDn`LW#<9H0p4{exN-( z9^@Q4C2jgTn&>ukBm^FK@!^h%_A>zJWZX=l$}cu6i`{JxhOQ=~c)^CmnzZI4Z zQP8U=eZyQ<$0ArYgZG?LCl0>XXB&P&vDGJv!JQT#68$5ROXmGG$a&R>^0uj}|mXw}BubZ_Dz8Z{z^ZgPOc_96>$3A^-5C zuo{5rZ@xj_2qt<#YYGUY)bTnU1L&@9LN_RhvC&iItF#K^RUj_np4zrg?k{qhy?(RP zL^JP9OiQeEXq7g86{TJkQ~M$4fsf!BAc>s8_SEXWb_blg+3zs{yfn%3tz1(xnRJ8` z@g*}#rc8}oRP|}!4QXNQ^&l|4g6%M7o)s0YwH(Lt>J)L#SwSfb-a!i!lU^@TZtd8& z!r~QoKy6lus0C?MlOc+6bv){$TEvO9`8~Y;I#RxPxkEX;g?wy6aZ#c<{6`~LxT;1) zUF^nwg#S0jK140yy7f@urpR^mb6-H#bg>ui$u#dhblAN}Z#4K^4NGr+G(qLEt4O=4vl5V;nO3bdldpZ&vUllY(q zSfv{~)tJ6`^||coI~AeLca2`ANVDcaPL}fsKro+)O>(pBmkMEcz)Lqlubfn+Y#^MB zqQFQq3)YS4<6(9@`%1335NR=4hNS`)M%E)xtFmIkx;Hf@Dk-74dwS_#LT9jd#yjLwA(5&bri|PNAiSuVF++v$KKNs<407;p%KccG0lmd|WjdCR$}dW8kzYP{|18 z5%eEQ{Rv=ex}7I(weFWERi1a>(`sjB`|7~6nruF2Ml2P#%Q0L3%-al4NQP%$Vs;SNwS zu3Hx=Ua>aAcV%Bb*%`5~U5Ntg{8md^*WluPqpw(jadJ}XP>O*h4`uF@vYMg|kJt@y zY$Jaw);$I-iP)#K=d}lqz+Lc(TYF!jPoegLF-mzrxy3-gZok`*6!5hQQWLw&eZUj@9YpHWi#cOGzK0Gpij2fBFH+G26!Z=e=%aX>JJ7 zpgs+wkl-%lnXD(a7@O0^8(_+m-RAqX={={?=t$hOVlYbQ{qhwYgL5Ec`tGN{PM;X1 zuf9z$PYw$FCZ*Sua~ES_NnSYFjg?bY+bPmekAe4@wq=|^1Vyig>gju;ku2#%iB-#^ zxkW3rN6L*d>d#nlWT+0ouk8I68rBA*&ly^;()j-#;^9;@RR6OwDq*tVUN|Z$E4%n= zsTG7Bz_g(We-jASyb+{5;KsaJ*4AbxqA&vPyj|2-+Qhh%t^|*k5%t%M2OCP-uwCqy z=~)cEjVlc#H+rO&m~C?rKJsNNFDQ&~aA8D>nIn>>=Xk<>#F*W^9S>GR@qer(6%+Z< z2*_Y*xA4n;;odzuDk4r@yz+@?({3|WaGZNi;`N@gMJS_G5pCb`l4GD zNfc3mYVq3feK~q_Ynr|{;*j)2P`utzQ0)R<1i8>AJWN!;sVH_h)cIKQm%?n^hKCvp za3``83Zk5Xm>_8xjpc}{plQyu+0A4gahJ@G+{({$WfgO!OU|Q{Fm+`c_{;||KXGf$ zG(I*#T@4_9Vlk74bR36=57T}1X}BkgKYiSsDC!_q9HF^@| zzch{=Zv;&@CbKPt@?WXbQYineW7z0#U@xfUZWAv>vvLQ0anZz6Hd{Nxc9;)Rjxwj_ zyOpLEb2@$=q`GZ^^4~menz}N(#?HuTNN+rNYaI~NXuY~{j*Vd(^u`vR;i-3JIX1Jk zEpa6qFk0HSyH(4J8Tpi)e7y|8Y5qte+2J18~PFv_OrL;2~elz8)l6_jD z{xr&e4ad-JQ3#_${a>+BFVKHQlykiT{%9Q{IXjCSxkPBpB$FHmkXFdXM_>l2C>X1w zQ{Gn1Vz+x8=xe>MU+!+pB$zP8BJ?`o`&69wzJy}*+3-}nULhfj{Vxu2AIO2pr}RP# zk1Pb>ueb=kJ~zm&L_dUGokGVeW2rTGA+|%L9p>tU9$@gPD36G(E6CY7)w~D)E5b0q zflSL=&ZB79@1w;sD^hSR9gL)4SPbn!m_r=pUDLM&&4+>RZ5Dvh(Z+?nX!V&=`S*G@ zioMprs3WAAOPNCyU*7U4n{b2YKX0P&qr2ssfsU}-45CuBS~MkNF<{||rb~H@d>A?0 z>5%goz_zH*KG~`)K}st#@-fiVTpt=*Hj&CqlPXN?D@N(nk)Y%h4l2&dzBGM;){*zx zoV6Wkk}xsB7a3>m-tL3FFZrV1FVQoYNkZOhGAYCqljc`JkY&>Lk|{o+uQ0dKO*Lyo zQ4Of@Q+Q{%fhgEoW(LKI%5NZPR1gGR}fg&4cILoOnv{mq(|kmDt3DkHM(mU<|Gp!w~f*Ni*mMUY07Px*`6k63el z0!FskK>mAk5Kz{=NtU3_7jIjaH5$mTHUlUkL)GEu`AeY{T8x?5XocAFnvT{ep<+&4 zT?9I*TS{EXfsyTdkUzptAw!7>Ym-p7R9z zMkaG3(`U1{F{BMH!TpCwEi5wxPmFzp*EfV`m2=!$5NxW$GkOrRhH3P-N2O`wBZ!CL zy%I)8Tjytnmc2cSD)guVK98c~COgNo2sPc}F$yzM3(sbVwACb8Jhc_!P9{*h!`^>+?=ycEwnNZD`x~mZ@ktSyohz(uP z%+C7SZ5&F@7^zb3LXQH~XSggX`HnVj%G=DKFn6;3*MdM%@%_vTv3@Jn9QhmhO%-RC zR!dZaI2!wpqS5iKsFK5<>KXYm`AT>3J1=+mdwse7zSX;;;u0QphmC9Nr#$J3A_P|t z@cy8O-bu?-4Di#LBdvYtr27n-1b#+O9EKXoKx@^SN;t|YPD`#4PfVck5_1Ftt%L2w zb^nm4wYe(164K+uK27?g)vLursdvoXH90<{jg|Fg!_=pl@jP^9AztPlbOSwY_r5}z zG1791iRZC%s*`_~DvkKP-c51cr%Gquo%#bc3v2~sPgLYDP5HsAHLac^I>~S zhHx=#Vw1sSW(doV5L*kBRl4u$xq)_~Ll(KC=&tI5)ssA_F^A)1cnMTIMm^d)^^S&` zgC_DmI#Scp-U7|mKHFay8-%biql&Rfo`GD9&x;W2$UE{fdM45j&MH+o5_ClVqjg3% znGT6@(#S~xxOjZ+L7Q)EqX$p4g$UY@=bZ45p)k7|KP$`-J@(#os>B6V@74cmbe)h3EH?cYJL}xZ! zM72VBn5yEN1StXB>D%;mn@Qc8Mij{j5iR0S=@vinw*&CGX$nAQAZquU7%8PE(83~b<}QWfO1%OW*$%8G`bjY^ z|Ig%0B+hJ>qH2tEoTG^*e*T`g<2<;0Un;iZM1Q7gY2?8EUcY143pGuy%S1ho2x?Uf zz!1mU-GHdkz0x+7-t*U3$(9;;MEw&WYQO}V#|^afG(9~b$1_6{q-ZQs)K(j}+uG0p z8W37J3$u8<3~es=)mC3r*;apZ*czZyK@VjLk5{A_#6$GQ5Utp*5Z_SA^{^>Ox(!6W z*@IQ*wXK6iGxdxl%W}p65vLaznscgAl_mV}dQGu*5F+jhs=KEI*>sOm`A6Q|!!~+u zZBglmUBC(x1bL;h69p$dRPeA#oE`*3{QO##K4*{+Q3Xn)(=(?ZD#RS0&k2e7qbsUT7pZXpZgurm@I`$DZUm zhhn&xm+UvZ;S^-Q=Z7;`%CEFo7I%HOJW)_2%0v8Ha>nG}YFVrCN;abnPQ00ZHpu>C z+cFqoq(=;*W%Ex>@{F=Oicj}u1RS|n-a}xc>Nd061G3-&Nkq(%PZ5ps$lv_y(e9}S zU0ktuD%?Ah#ad5G8F^Y^sGybTyi3wcR@0V3*G?|G&=IDlbK>F(TMXoJH=CDnZoPeb zzwKyW+~S*mQqKd@M9tdBk+2O3O3bZ`g*r1sL|J{=)~S-{x53$b$}`ktvoA+)GZj-u z6|?NL)!E*4naX)oeG4G0+;4YUyN`D8%$l7}@AKAXU}!Fcfu6 z?l*w9tOz(pnN>oxxYr>~%6q@PBH-&)sDGkD;QT!?P`{QxqA=OiUA2W&w_;Txuxs=$zN>mPON zL*9qP$>*2Y=`GOaNw7ckor@60L8~9Q zCEXAan6}M+b9?VgNp?;|3=&AOMc(vuSaqeYbUA(-t-ldmMG|RkB>n%!4Vb{y->wfZ z0l-ZdyX-Nm-GwRkW3|AtJ2EqCrHZ2#e_sOS?~1yj0}JRg_3Hc59f{2t$F$Td$P@_< zfMvTs8b3>$t%st~B~y3o#~6RTflIZ`rRQA<&)?va3`3H!q`c3P zKZo_SWJb$n&fwd(v9iiR$~|@UGUm!p?u=b@n(7A^c3?Uo)cE814I~w|`tvMzLHU%g zHis3@0!*9EgseOkuAn;O%tekK(TOKgb}Ze`FPz!ANCi84>fik>oO&HNrJPoLQA4L5 zK*!=E{5)0aMBHX^(*8y`xsG%LB1=XgiQgAUx{vTXYgmw*fYBYO4r&dG@H9$3Y!=6J zxjt8Mqk(-w$n5%+x}l}Sx5+$|y-fOHxsT2$kP0Hm;l3e$jL+_E?tR&5iN_@i>y+UbVNKt&;1XKO_Y(Na zo%U|0^>(MX@#{M>LuI-{<_sj-*lz z0FkZs;Vb2hvHXwJ=3{0@7OxH|g}TsqB((>5@(6Z_pRaPW(xTMLZ%@If;J~dAoC#A| zN;0opfG>Fw^f$n{_>R1vdUEl7kQ2CVt#w#0^J}ccm=&W|g8*+_`)l(qi*Pu%cpD}L z=43ws3Q0FtfC91i;0MEcb*>l=!_1;c7| z8ndrF{pkpZ^rmD^2p+g=j*{_%t!?gk<)(+CO(`?NC8J+LRAK!DnREHRqpgwk((X* zNSX#z`DW~c7MQm+U%Re4l0}ZyqDCTO zlRikqKC(C(!f@MXacT^v=RyTaF7RNnpTrTWELrG5E zRC9x9X{0kdvT2T$uzvy1B!}y177b&FeoSkLbiwCs7J^qasCf8vBz1mk{(|*9`t`jS zzHpO6ayOljLdk-`(lTsV*mI919UIvUNG|H2$=`9uTA zWqQedD$MMPlI}bxumUBitCHIOg)y1Q9F@AXiPpSGTxyEUso?`6-7+XlFFB1Fl@%IRQDi8!@;974Pa{2*{1VEw|4g#L zSPKqn)kb)ba-d{*HMe&#-|QX=a)fZ17Z=!)ng;`MH1z7&GN~IgR_Ux+=5Q9w_S-eH z2;spQw3wAI`E_m@&Zonz79R??RtG@kRn%^ESh>DuO(`LBxufQIWQ&Nj5#d%cL z4NtEuA6k;I-F~lyc~nu?6SkQ)DL0bW_ynNTdSe7-|L2m^;VT2aWw56F9lDcGj^tYS z7ifj;i|Ip_q=}~I$EL(_Mn*!dhU|x*`grWDv~T?3*eC82+wi2AmVUS)$=w#={4xGa zKl@|%S#6EX+z+d1a>W(=o|(w3faWc;@g9SG%;n(ke}&)MbV6VLJrw)kW2_HI92WkA zb^3}C*4x-+-&*814R?EedXCZ8g2}(<8&mN9iA(GOB7ywK$7ff5_=)`~%5#PTwlBxe zn=6ma&vBD|`0_tq`GifBh8Q=|AE0EX)%f^VpJ>7&I3>CxH9lVbWQvsa{QFnI)owJm z#Um*JkQ2t8$)l?Tp;OUJK@9AT!%PR?l39qN^6MlJE;{l4d+6zC;weRK`JxXU$6j<2 zCiiqmJ4iE1ccg@N9d4qf#s&NZ_ob&7&MoACn$-_sM=E_xwedRBG`>KY0hI5WsXx&M zlk(l2u`k>f&n%qV`69Q+QG6~wlaa*Cpep>OTlCNZ>dPtN*ix|Yv@>QC3RIy)rWk8zG4Lv@ZCxyz#2rQ~DLu1B~l zhvQ(+FoiWqC-nd47Ur&OQl}3o@{vf;)E)@^fv1m*9x*sHf~v^Gpi-(H9QqF!6%~C~B432}T2> zpj&A~(g*h3)xq zC@!?lM~^{C%&CGZwLOP&M8Woo$lQnS-@$|u4Q57bpFkw@Yk4GGYul_uV>=$^GC5KE zC|4^=`&)I;{xWJJ1=TC)m(ggT@#I(NOb>razqN(2y9oE&A@)9rX4t_;Fkw+T_{a6? z5;Kmlz$VtQuY?br*x>ojIk*lmWDFwv0?qlQk)?$7M_B6h;-#d`Y_!xdxrby=SGUZw zZ}%|AJV%jp_$s-!o&ITB!SZVptUlgt?{K4XnkJ-qPD^Cq(5A&YJ%*omo1Vs| zeH8ll&wzzVHVa+9b~Y%=OyCD@bZ}%M6mEDIz5($z`5(GhzLvd*83@lI-hX5%`GvlIZ zj`=OkfD}YPn(?(9xd}9YmKxnX{Q;4hOjRE4O~rn>`2&)aA5s-FxpiwEQhCXnS$T^8 z0RIEZV;*nK+r7WvT4#TpbM`*xG$^NhtHxsyU%l5}d+oK?Uf;VG3L+U<=YdR#E7^G7kq;?nA4EkUcz+J#nj9YS00_=VM5q}k622~%ajAQxW}6(%uxyH*`_>3yLj!kI`T~<3dgLC`h4}EPq$g!Q{$uxXVL}a91Z-1> z5kF@^zhyzwIV5*s%xaVaURvdf z&nbV_v`=|qFK3|FG3t?T1bgVdYyO%c_h-O|tVdUa!^oUs>JJ*H4PC12vsL9VyMDjh zY4HGtC ziP^%>S%&!GeFicqWN6&cW?>7djF3Z{BED)BV0b<=X!ws(SEY}pT~KG>z8EW$=;0l+VVOXjYMLHxD&M;czan<8xe_WikgJ5!en-$ z6P)Nd2mou8FANuU@G#aGZS|Pp$0z2KSd+=CrPx;yWZXo*5;`!V@)SOA)vQQ65qJ2? zQWs`KQUP__^bYzw_OMIMad%^f)w{oHjlLK?{bHMzbQ8{Rn9$?xcF~At?>-kfciX`` zmZy!jqbk)z!ry`m_n+~~0cj)$2MhvhJ^S!mX8ChzBD0o#k{8`}9(mAwI%sc%9KzF} znx98;=z+E*ENsMusk=DvpMgMXdziB84IJe?&+|5)0ziadxW`Isd?`BJ*oaz-0F-H+ zKvU19OGlc0z|8&hEmM=lomn}0x+t0AKIm1O!#ox%uwj2w5 z2D{Lp=wjQQT3PBRE>be_=F}%II`arsO>iy~U0{`T$7|T|Ry^E?$6a z^ltK({p{t8Hex}Y*5qZ%99(y)URcxxt|N%$MNmMkB9-h753GHQ^uj}luw+cLGH0Sb z;mRjjT?k6WmQpiol+rrk0WUXCfAFFDHS&!aot0eJf?tYJLdB7f&lsK7Fg%m4>3+V9 zsMwc4l;69bxZ(QKQygt-g!~+jh+o>Y^bwyoOBlZ5OV`VNh?L9AU-q{X`O@M~Pmv#R zd3m_ET|7MxP{6J}C)KXVXB7W#AGk+BrK5@eKf{%|RdJK?*0k@olhKdfg zpGD^Br9!~biZdF1>>@HuzVrX*BD9NH9Gs5?ax3)>{h%Q+)Xa8Xghf2Uc4&C{s>m<8 ze^a@Nud)SJgq->ay-bnJ0ww_s_t0ihlkPJ>LvId{J$d1-bb{##3-P8N4G_X z)fI&UdKQ9?%tCfiCo;>Y{Z#hTc~CZ+J%ih_bb?SVf!DG1EyF#v23=eCnK`nTPzUG2 zOS1q!LRSwpXfORq@reGj0E*_4b2>83B<1>|Q04Edwd5ZI6HT2BtI6#3TTfH|Irby# z$RlJ$hQUi=4pw;DD9gu!$dR6l9 z@uycGuCB=Qu*f;UJ+>!rk1U~Qco)yZ?~v)4e+6jGm;a&Hy^^*^6ZO5@w=hP{f?P&J4fRu(NegrGuYlF)E4{TNtK zaml8?IS-mj9|~nP4SD%Cp~gYKvQx8GK>PFsy#0{1kSD3Ly>M}v&Cr{i(`xWf5#aY` zE6NbKUV;G3#14uQ>FM_nDXR4|5WW<-Y37Yx-1OrX-=!;Hepw9JxJpU(VH6C>w-(m- z9*12T1>iGkgcbnI2ml+-DvWy@i;yWTh^o1{h&osrbLl9Z9V4B5JjOeJgC3k&Y>J$|OP0AH7E%wZ zx^Z|zQeCDVRs?s-f}`eyL<$7KN){FZG3$W{uj~p)Zl|_n*YixF!DB;ryAaQk{=9`t zHxKRkJ`~0cK18W+8)p`MDL99o4Ar~y@Xr?D565jjzg1YjmJ|}o07N9u+SOQWPZ((O z6k|aDyplE@CXlStP0>>+n@Um(cHv{h*xANF{Aa0u*}2is543np>HeaS^pvpGo#wE( zuMLNio$%0Vd#{%k@@5E}xDNw=bq|DbKAD1W9`OQ2&t`yWCNYnTyFBI%5a?G!Bq)bn zGNo{iAsw`boKp!IFdSbG=B!-w^pUdQ3>;)>b9mKzH!njR9iz^LTu15E-cX)yDA0hO z7Zn#qep3YL!&?vn-%eMsSB_Fc6*$gJ$`)J4cUm)LR3xqiEte>#U5RAs4i@Gw~>2VFDv|3WH7UMP7 z@Ee7)3IomKc15OdJ!$q4Jw&QP7_kC%5-3Z&yW9jRNHDN?1uY9VEa;*u@DetKfdI9o zG$1<+MfokX3vAe~ITguOct%WCMH6Bag1Ug`9FDy*5oh7@-TlaR@<=~ME2zS-Gota( zz*9#r1taz&j25-u9-th4QA&GCr z9UyZVa9Pvfdqpr|%iu-^h}zRd#oOHrp2c8E@UDG=Jmh64%^cm6PLfJtHwh64Yni?a z!93fk>Nz*wbWl-4Mmw+<7lTDw)bFg>2$nSP$j9Ai-!laoPc;8c(oEl`#kZbqQQ+>I z-kOx4bymhy1Te70?A=C1enY7l|2o5vsbp{uoJ(9iP^5rcfo1C2wkXwqxkyN zx*hylF~jB(u%Ycl-;ipq3H&`tdJQq_Qcr?g`l)q2kPtz*envfb0E;qYZt7=LA+S1mK=8T&a{r`N1b-FmHQY1?X3m zpYy=KkNP2vMeIc-LBOggrhA&cHEy}w^gF<_bfQ`nKJMeqhRanyIv=S#7Se}=uSnrSz&0lqS2r#tok z04D7SUV=Ur$<+J6j%qhMbE>%yU5mGdM47ZS z*`9q3Jii7uKCRr2={oqRP!B6+XzeQY{Z{bP`TanY1#2WfFpk9o?C`J8gW3J~6tGOI zK&3lfx%KJpuaf1{^v%aGT*BX3`o)WjYo}#e_vG9HjaET5W&$k9+UXFaaHW;o2e-Tn zXj}LMIe@%F4~WU1RcAOcKK)Wu6df^?oPDK%RslA>6PqCDeq-u$U_p(E zoc#IJFVp{h4i%3%XPTJfY_NVu!evCD~kEq(`SmB0U zAy>rzr95v0=j*HMJ$T$C0FsQL*lO-WAtwS|_-=iMm=Nj#`R&bSvNLFH{mDB!qfvi& zn`^O+w${OBvveqo-WzMig#}1e{=I{lMViEJ>lzlEG<+J$@|Mc zN|1=reA?S_5 zZU)-Y(zuU4aL{BzaBtljQ^Vds^Mp+pCroVt9w-@r%K#Oc%?>sfE_uz=<6q>*P0)M; z886R;4tH;SP9Ve2e~JJ5{C2;OJi+GY;wt|f7dR&09e%zldz^lG|Hn)3U;lhf(*K4@ zk`PS(KAifSv>kxD@bom18&z_v#+IWXK9;Q;OaNd zDDd0cvhU=uG`kwK(i9v+-z^Wpx#kvw=*-}VCIP*jn%@kV8?!GSUOCI~|t>(q%&Lj%l|eKiAR zUsrHZ(vNABEK|{GYB<$`C(HU(oaaDfBu_B$JYhj+w2brr#s68vkHBbP6Y7AyG7mKJ z3G>eQz(7sCE|w~t#WB;|SgJxiP&7S!hvHm1m{lmSp+;@(1DQF*4W}?zY>z=0NJ2AL zS=gp|Hv;ofP4b;3c5HC5GlHdJ?R$_9!K7>V13u()8J@@_Z(4Luv?>xdT~D2|BXlsF zI@b^)cj=$BGad|kFLEC}30I8p32BcvT6bGgv=tu9CTrS*jMDwJAF}a6 z<8Pw-G};HoE?{{#6Y~XsWWtr9o*5agxh|Y0O)jzjlg<5ZX71v=LNnW{BQx!MX4-sg z?_>rrF1n%%&1=pnc#~Sj58(CVv2;4EAaQb$rDS`s6}I9`1}_Q}sT;9iQp^-gILGpG z21FW6!l|Zc;Hh>&X&0 z$fP)FY}Q^j7Kz5dxX6os>^ZrZ7^(<(nW>0|z07B^g$&%2=+utrpw5cU`9aI>VcIk) za9`XC!r>;Uc16D0=AohY%^D(!MUjLF(Qq z+$k2FKYV2GlV-C0@&#Huj39rtuqo~MLc+~|(i%O4gxqOw4A+^0_z~;`>2(xp9Ib?~ z+4FX`S+C=TG*KexV*tIj)9gEtWoK_kPW?hz$kcFgQ=XnVP zGdJB4@-&_uEprdad0{qG)suPyqq_NuL@c|-jzQLl2_et$H_KL7K%@7+%N;y&8`WIM zTu*Lr`V%%-?Y(PoZR#IVA+9#7iga~=b3+((-eED1+T5thrlwW%u-B4z!>_I^DwH2o&9lDKDe(1fz zhEI?LzT3Ko%!A&x2-surLbgSVgt2HRnbuE)hy10aNoLdNjjG6V5O-xV)bb%vWQfiv zuf`3@E^pMeTAt(a){5&ak?4ygfA?Q=4#wmYIO|Z;y3@q_An6<2Thfe09E`^bE1pN@ zoyIe4HmApm#~(8ryE&FpRpE*dg!^*l^pNBYmcy8ljRYbDpY!}%`JqR65!(WU;>2@k zimYmvaoO$JEkoNzyeA1ib$HX}(I1WG3T*`ycQ_4p@bQa}&>#n9-F(G z=-V4)c;++NW_hvQ!T_Hk8AeZ1+32}chcvMvsA3kz5qQ_}P6m3vausDzj$t*ddSz7B z38o`xEFdbV>|EJ+EkRTZa?3!nc$_wHpxK>0s=)_4m>MBmwZJo;Y}e4Hq%&GVop=ldpgFW|kt%pK63)wZ zD)F-ng;q@+FCR( z&obc!+8mq#$$dC6cM?g(*Dydi&~+TA=c1fbY9c6X7t>fB4|nd2Mf;tzS z%s8|*dR|9vWz*Xt4D8fk=-$@cFGHzZGdjGkeuhc`Q4Z#03I-0D(Et}^^||7EHm z4f$Wj4dO{N3psU!R72(qRB&>LnqXX|%*x?ooS}57d6zDQ%pysbs-C1?`c&Dz)W4_8 zpfJ(OkkMl~-t#rC%4Kh~34ChCs~>VJ9T3>uuk>NXKa`MHUZQgSk!-M3Rh7+pShONPSa-129d-bix|Ytb zYeVOyHBFi<8}s_qZ|#WJ|L(U{`$!?7b^AMFnqo)o@FOq(MY4&J>t1`6uNd`}{-WrWkrPs^J(V_Ya(U%`ZBsII;; zs+vSaMrA7Yo3&g9ks(cx+~h}5$>IAIi-5LCmm^@(ON~q*K-N+mQxWH4(EL30Sk1vM z8>Ny?^ZhtVS)JM1gjO8MJU1ghyO@D_!Qtq)zO<}HHz~kzN(t&5rc|nky9*Be&nOFM zX=}OcY^*@6?llK(26K>JsfDWij!$Q#9YN(!HyU_Cx4nthI|$Qjp|B~RMY7R=avB|O zhfJ5yx`KoQMm?mCag3V5`Xh`RDKtddUU38@Lk}}xj7aVTam>~f;)dy_&303P5irK(f(8p8&7!0*H)$<}&LtMlV}8eyGEDcQ8OL^EUMiVXqFUw1qGVnn;L z5!)W9#>j;(2@NTuH84UCiBot^tRl%5ZK7B(io6Oj2xHi>N3+S-;l9LR9$g)v&vUzv zoQ+a=ui*EJp{UQV(SyK?)G^8-tsyJpkk|etB1j|{i%e8dXc{}^t45#rS6=yA8mXOv zNf4W|guiKeQ(jdVz|_$A3InP-i}6@9tj72FG$A0SyHeR;luM5()egGQn0Cw!)z=gn z0Tm^gTEK6q>`-l3$YHOzP!nhF9z8J*OOAYR>L*hlplpoeoX|JUH7E8}52r#!`e|9t z;?%FbnSX=dbKTVYO+kP^ubIgy3V-jv{)ar@EmSrSlJ-U$y`s`S@woS!!(nfuEmtiX zAR&|Ts^$ve6O_KR${>ktLZp~$Xe5CkI8#SQt>xtYGnQ+^+-N8)&3y!@WMK~v7&I5; z`K%_i4hgO-y!Vq2ezf4q4VuZ~ujO;Uk%m?Lt5p;1w2}@JW7-ngdm2U|dJDq2jjq2eherhT-spwT&(zxVJ?A^bi!ZFMUyQMGt?N?Py(%`mK(t!Pa0}1WBtEYP zVV~D+soN3hI81udO9uO@4K7+J2n;#3$`<>7O}JRza&+qL;8vm2iB57a(-c1yR1*B% zm>e!EB!3HOnQ~o+;6|7@XcDjY6RlD?0d09ZNctbR(zMim%ybu^CHvJ~LY8#^@VCSUw45_?!2Z(0pFbFpz70R?R?RCSkK zL~Gh_vDxZfH3>R2yeXzFHH4W zuEnZ#E_eZL6HO^;VF!TB!mfe$nzCgYn_ZapSIO zTBT_qC4(ETFv>0mZ%p~kI?EOj8jfd?%y11vmrTzlmwI}{cWzOby_-GvmFwVxb#!oN zMY`kgBlnHOtlD_CIFCFY17@Se&#G7RG@hH`q@4k6dGQ>9CRUaakF^Rks%V?joGZiM zgN|o{I?cVx1M@aa51JM{B6JtkhQHf<`F}&bdec!zZHcSi zPektGLM%K(Z?T(SWA`qm6r^_`+)*_s{v^F+(_}CUuA%8nPX}o_ZV8@ebE~zjLM*VE zbu?>tKCf!>aRZHy2~j}{=#bYDv1|*?b9&z4wJ=!Nrdn+k9{+kGEp7#T%aU}bvrx~E zM?!rkFOAblRN6;jjn374;epvS%1Pmu`Z`A9y$CCGGuls);YWP>7gB@q*AuNjTeS6$ zwepX{D|h*=EKqv&wNL-Gb?39NP_MVNhcxz7UHi24L{15>a;N#EaMr0n7Xp26jLLgH zG<=ReLzF$j8_1^?c<~fJVdA6wEcISOG5CB72qs{__ir^ni*9m4%5&E;ey2129DkQY z<@A$(j#m4Bfxnt)88I_F%*ej!oRuH7B%>&1sZ;6oADdlg4r4|?srne*bC3h^K(%;(5Ex>qJ-Ls~IU!#p*mK^^Xz38Qd~zMbY)L7RvET7KntLLt5jNK7^KV4y|! z%Q&t`6Y?2<&%6u=PiYo|`41i~7c7^?R!f=@wmu@l*|;Y4iWAQ|^z=vj{LCwmmJl)J ziXBhJu(>v6Xdj2Er_Vt(bTd29g{`wG)Y2+O%5~mI+!xKU;c3=gnqaKk)c~z8bm7 zq$X6}@rzLbkWP-s1!J93PWTLd9&1G}HPk)$VX6Mc8G+4zh zqDEcjYa#x`_7qpr871lp7@Qw@1qe0Kp($%yZZwui3x0fq!WQb6c!AG=qe28Py zt?_n-Ivh4O4I#7kPnu{fz#{Y4vj8$VM1zP+o*O-#TI?iUo7`f^94yYjPN3ZhD20Gp zlP?I4pK%-T5)*f)z1@Z}X19K=&Cla$P9a`+;ks@{=Y}u;7K__My)={*QkQbxiIFi2dJdV*i9RF}=KhuY~LutQGd%#j$8K134+MkDF)GU0vh z2!A&EUvQbwATzqAojG}IA3GG|i5(DY?bn~C6|SawN!3`BV^EF+8OhPhyt1d3C9Nb= z;yKhvPl%2TOOyO*T7z8=QsC9xfpr<9Vgpo69n*H)p*8pNUTD7S5(!p!ZA=r7(fFKm zvBMOtMcu=oZlwG>gdH2er;bd!qG`1p<3#ufEW=%M%~}rL9&e1h9PtBbuxA?hv3H-% zgdTcnlMU=b+Oo&adnj#&GXaG_YLv7MbAOJKEYy(IKCf%`2H(F{2&1FgI9w1qX5Joy%NM92O$3Vl_366 z0OC(3fXM!`Odk7Iq^Zw{Cs9Jb-Q(L5&A~uCg!=^BV|tfGbH;%+uYT5KOFkuUP|f7K zS=bI`dQK)hN9U1q#L5_Y9q5$yx+r@g<+%rVaYNFQ;hyR|2Z1DNUULa085T7m%tGoh zY+yU5*u^(K%)CZW6W$dGC7O=qR7Ir!BSj?cPX;QUOXxuSE_N=jBPtzf$aBCW>hj2f zJd?eJV!lbpa;X9dmilB{V*Y{YjYXfC_5xy`PA0icHnn-?nVN#Oqt#$UkrIJCW=oGN z9y+;mw&MS58GObZj)8M~}(`_%antG+&F`L233i0SN6FCUG?fWF7AViNaWOSywWpp4m!8 zt*-l>NDYP|ovM3Grb#yNYKpeNuQ?l&IP=H;ptKa4VBOkJOx6vdp0bjqK(IqmP4t*1 z$qq`4xGp)^{`YnsZPUaeL2#@2GQlcJG~=4so&_<#6@i|Mw^|(e0MDQ|W;=L9bPz)E z9#F11$t)&eCZDNFatHq~fJ@`72^M`Pb1C>zPq)zojLl6|CZFH+o3CdIW>h@e-u}r1 z2+oSVqOoGBhP1S7y!@*^B9lY3+4ObLyCv_%L)yL;EPrIPaN(X4l>n_&H zDuCcM!Nd#4EeG$QvC&3wb(s&xXNv=vh79XWeQVct;0_|b!Ku7YMkk7op4E9IF)2Ia z(K{VPZEqy}5}Y_VG>SqcxQiYp%pvDfBWx+d1RqTs;ZKetr&Iip>)ze!^uBHlqL@wq zI*R`U)1C8H@<>`aGDRed{fQL&d(FXDQM@YvMRBbKoQ(@WPucl<;?U5fzUMhi=M1K; zR)6iQ=TT&9z>6Zhzd0zw=_DD*O8f`IP8ythcv>OO7g>~p;G!tkoZ_rUae0qSP&g6GgHfY@ZB@W0(_8`Iy#ag$TeX%C#q93pm5SZW1OXc5)OpM^`Ak zHfpsxQ8L#88pVB|6FtJMLT!XeVYFql{9zdF5ndM>@7BUR3NVU!%}IPt(Mgy-OP^jA zXS0cq+MC@{wyps%igWEr<~&YOAHD1EZ?2`s%{}S#U%2)ogQHkg0zB_wL#weP>6n8Y z1NyW2*}Jn21e#*bD7q$r~Gpr7%mO7~m-7Mn?B zSDDx74qRV$(-~?eubZ1Td$cr13WuSg|IzD zVp~upB!*EaQ4H%qHVr=&zenO*REepn!Y)v9#^Oose5bW}yR(aA&>+6GphoeYWTyEX zWrRvryFYGmCXIurMgc_8s{xea*Wa%(e(K=te2tS1b;#m((&9HBbe@0R>xIc#16&l_ zeNCaZHET0j2?~BFVtjX}hh8OVbFhMR&te<|SB-J`6co{p#^hX{tvuJx8Vb{#8MZrL z1(~1{RutKK@Gs?XWgB|N8MeU_S`&d~qo;1ycFjH9q8S)OOC+^dz-G<gLa02xb7tSyn%&LX#0@};B3yR{>ZCq(DF zQ7VBE#jg(B{ATeM&QtQJq2ziqtk+Zki6U4DIJ;{4ZW%>$8iG}iet|aj5?-nxTn0oG zuNq)y&`D+&yGlJ^=vC3_jl&!l9Ueuc5@Zs>2xQdm<=#ZT~3nx+vQV)&dR|8lS(^?ZOWcJ%(%P#g*rE%mfpU!(2ua5`68lylgY*yEV z8b!VSOy@KB8@Fnn)`pkFp&BK2C9EjE_29o9#FaMO?_jXdOhNilf!gW>ZZ#hcTCMPn zR2yy-e?#x;xh`eakoVh$xaLgCHR=v7=bMS3M^`h+j9J=I%F%?OQ#-U4L#I{LkCv~b zHr(hc>d%!GV(XCCetwY=SnDlKGAi6F(cw|lDnXvjaLIZ=mY5S$PQ_9N1`==l&I)i~uE)e!vT?8#%ugMKbi>gGn+XEKl0 zcfs+|1y{p7=fN~Wo_QUZ$1dqaikUb@fMn1*s{j;5u@>+ofMpt8%HcZi;krg=8GjBU zTnlCt?fUba^>Duj#@dyin^P`wGh=XW??$mLg%ZWG4&?J5eh z%xZu<<6%T);M*Jx&5o4IoDwKeBaT^;$5anD2KUa}Uv5pI3fQ8r=0VifO)iazsEzQLj18N3#~r+A99Q5cgdbhbBy(Pht|@Ae_$xvm!uWb7f*oBA?q2LW_?J9TI$xd*7*E&s zTg81jWuQWVLo1Q^B5DGSqF;L=y<^1qlQV5kqdmzGTuO;JwxvL#IMx8HS3v+f@H}!s zERJ@$g5#gHI>>MgO6?i|qxjaIBt#A-?mB0NJ^Cxnue+1c)dGs*Srd4k6nc9XdDcqU zRLO{m!y53SDA%1s4FJavYmk3T*GHy}S>{`yTqHk&zYhNoNV^xigm{BAbZ2< z8cT15easPE-FG?f9<<6qfEVA)?%x_}C%W5lo~&A4V4CRiCY)OJTPFiPRxQY$e|xQn z-V+o6B_N_$)&P4Y$5$z4aObgm7TYUq0av>CzVtL@dpHH(dxPfFAkGs5kFKQVgn1Rj zxhIQvgat|8WSnbif~>~8e46}Cv=(u4!|KtSqVy!!fEGn~e=~d*IipqqsXCo`lmh^x zDDQicht$XdlEng4wJgpZd8`8ftFf+{WLnOs^E)1RIA}{V`GP0a`($+5_~;o_&9Qz# z?MpXbgYzYLRG}SqD+I>3@Pfa(M@b9-($0T~32^2@HzTrxeg(lX7D(;Ate-q1|k7+RUe;6P7_>JR~31 zIPka^IZnAxM`w&fsH~eWZ19XgT%tg?&eGp!j=QDkd@zc6JoRS8(jQ+Zp{F@j`R zhwEy)`xSkfC{E?KLD5nJSRC8QC*XtGEQu>(JCg$Yus5oSY!Fry**fsg3uS4tk+Mdm z%hPo>#Z)|GQCurwMKP@he>uYiyUV)?2jgdSZ{{Tb&o>q$?qJ*P(v=CLyx9Ueuk668## zDUWOPl556O&~`3LCJRGRdX9NcGW4S|#Yd1m(~KfTOFfJ=x{J zDvX}M7g?GxY-z6e`t`hB2{nZ>WqU&C(dE>i@lxq}sQECv(k}sXq*A>Hz5K&h@I;`a zOZkqbqbrIJqWP^Z&SdsQg5}XV@bbmvphp)o$&BT^P<3XwHzj9gLg3K_Wp}4!LcY%8 zopQM)`O4-7JO%7><8+T%yDJZ1*ALrav$PhxDBAVrxDdekBb;r%Rb0`X_XMlB zqv?ucfBr zG-v5r&d(PD(k=%tig5ioiWCFH>;y>TS==Y2GaZOL#gLZbuOHJv>qJ!&J>_cLA}Wk`F6 zqU}yya3t=dsdE8FL$W(0H_T3XfZ_9?u+DutN|-nVwgk`JqJzZO@^xgYKI2I1n`ETREGQABG1znI~Gti#oGP##Y0 zSbR?#+8WO*1nqDqCm;Ze+LfXrSsbVBkbpy|ry z0lSu__F8#_2Nv!QTFsb?$iD)D;G)>>Yl?f2{oDATNm+1`%mX(ZJx8mt@LiB4KoDFV zjLW7tm)Uh@qHiL7p-BzF()Wbn*^fJ$E6t5Ct`&fyc-8`*C4}Z_4{>`l#VKQM8BCF> zJ={TgSMXrffEGp9%C6EGvcy;e-~O(kyBxE)b|Xb-6;Pr$RzuDz8R@aG`)!Y=U>GD} z6hIWI8bGuAVh*c10iJtpE$nS4_^s{sz6!Hs4R}#>>(8O-=hP~V+lqA@taygg-O_YU z6V91b1<%mWcbZ?dgM?*rJM-g9;KgySIS0#H%p6|-PK)bt3x};cgJ_n3h@w{mEW3&r z%zj>=;f%#APQNIGC|Y%(vX_LxD_g6F-&(qzw)m~I;P|_{)85*O`u{2bM$w&M5_T0a zSeukIzvrw=PW%IhIUCE{j;;FZAP3X}9$m#gCS>%(W| zsKNCSv}`^T#Nov}fareV& z3xzVP^sp)`VHVFkeV<)Uq$wVa4ymhO+Jsvd8JLq$3 z<6TsYKmTOh8a($NX1<0!q2syuI(H%j-U3{{U0$5y>_=U`8!9to-r^>~V$;nc4VFps z3{YoLKD_F^ofjK^0eBp@x8d#A&(Xr)gi4Nn#(Ue=xC3A3f zr>Rb(=%9I=I8C9Xu0hSn$MzUsx5vZYFYr9P)HO%p%uW4FMAT+r%?ClG$|duTh;m$X zTE1DzHM8QUkKFA9;zER*Wk!T>H_$W;PtlR)ZwB`37wzt5?`z?rIaudR&m0LzUKCDl zP2Yv^&}C$ytTdnZ#v^a<8}OFp3!A6!*?Q)R(Y0Uiu7Gn)N@>Y|eq#Qi71BaAmI?qh zpK7gy!VGRc&s?|yAN0B#_QK9=41{*8BRitkKlKicLeRI%`^jI^!IkFImN@a|B2eny z!;#@7Z|lZpyo8%y3%jT{@onk^WT2ok_bes2e~F*OS^KgzN`}quFd4N|R{MSirFFEJ zxYyhG%F}2V05(c0+(C}-@2YC5;lHD0y~(@NyRhwd9((}UJqXsbkg1s-&YIUiYsZ+C%)!E%I%*$QBma9kse+owj06-$rgoPZ(r?NvhZdrFhs#(G9DZ z<&0$(Po?oR0jSAB8_@ys`^y9xVr7+eZ(!p|FV*ydLk~>-();imzYL#}15EJNmL%%LOJJsuYr+OB8(o=8{_m^VByM}H*9ril% zAkLfX6)^aGNqPa$Rcui>l3oJ3o(eFx@Y-{d8X$(@C@gq8((CT*K{7s>k$sNs#CFoT zCoL*;TS;@Auw5a{?;3>opmcUh5$af(89jza+MAto1cs1HqGG)VaMwJuSijzXRs+j_ zn7Ro+^ax69XX=)G&)DN86kPtq&cvHgOZa^s|1#s8JWC^vbmEz!$;p*aRx;YIbi4$M zhiQ&{`HQD+H1#h2F3~Lf%W-BOY%3M~?h+tzM*GIPj8gT8wkTn9o}0jr`0%Tb<5jm7 zONW1cb7!>MxpfoowQOF!b@OR&^ZBit{ad%Uw%X{clE9s^fzGTwHd#r~>GElFm|WU{ z!SxNK3@T>9;iGqx-Z**rH)&^=L0&%mbb{Jw8eFu{evK1!ez4ox* z>$abQkRTrqM}kbHWD!<2zU}j6nhyHG?DjTa{w=@R^awuOAI1JC?X^M|BUxz^>olf- z{xkv`@g8HPMFLjj=TO&Xnc^H?itjL^3dl8+P4q5Lnj51rBC4VpRBhQY2ssKjUgyrx zJbZgRf`Y2DsS3nB=>KXpP(QYyWDZ zB~bBUE^L(cQ_JxA@O1*cM=74D)zkA&-z9H2E}cFN-gWvm8buvdbE?YB6N8b1e|ap{ z@H^g%Hvn}}zGrNm(Rn_eqBpJ;7#U&0&+|Z057mggUKjj{8j`tjc>p+XA6U{SZ0thL zPZ&mQsi5NQhTppQJOyy}6Hb&F|EP)#C*Zh#GrK4L>~Z^_(QOyuSHZT86O4j8?-`}%4FbAae; z9Mju*$>WLfREoO4<)L6hzV;loJW)}g;?*jkF6W~vRk8sNB2)RFr z;SOI5Ij>yBsw1RtNT{k0oK&IGzU^uiQRyIqL{v_DCf~X@HYyc-K`&oyq6y+4fp;L) z{OaIA7YVNbr&Aqy04==@K(!PQ)@P*B(BgGSk5sMkB`%t(^LKvgQxItz3`uQs325jU zqhHD`=P1jrK$9n}y;=xeL_8xz_@z`EYT~c{D~8|C#`+-BtZ^e=@ak3E20XIm#8HlN z)sS&u=81$n9>-UD8%@ewx>ReC}!chr{VMGIp#}>pi?z(X5i9zZMw)SRbrH5ar3@fFI9Dj%asqE17Q5RFA2aWq%+hd-9Y{F1S&5VarlKfQbkWtu^-yIFu5ebNTY@5FkS*sI$AT z{Yyk+R2~~$a1$CG4IzJTxHF6^>_SuIez_B-V>R}i*D(k1oLI9sokc_SPUEbg7Dg>& zZgpytJ4kDjX`%XLBcR(RQw#VlwPc>Sg&g*J15vM~mbi(p4oi-FZ|WygA58s7##Lzx znh8MdbtnP0#i?I=Gyev^CxsX`pkc|K^5-=(E!z|I_n-B~LteLgt#9Pax4Z2Dz5Ve1 zYBCRQ5!`p=izmIh8sFnI8foBRr>v^?VVTyKonIe!K^A5o`zh8?c`}|*wduSYTVA` zT(=Yy+uo{=p(qkrSaf#QUG5gzg5H4yr@g20iTW%7(>_!i)+~=!rn<1)QhBmz0~@fDvD#@q zM^ShiepPsX{0_gtMd z#4`^LN#=oO*HuD#{g0$pNA(S#Pw0Dy3LpH<@DU}w9xLM^@$U|2(o6mXP~gqRI#Q~^dc&$Wria<|*5GYHtSCwhpX&|EW6v`{FN)Nm;uB1NV~f78;OwVI zhw&8_JSoN+?{N6v#OPgoBD`uk?e*`(@*}{ccgVlDw?qVSv{FukZ&8wqjCH=ho!-n!e{g(DJHA5q&Q9JP+W zu`vgk8IeWaIX7Fow^Eb&=2d)8p>MD4D+y2^Lab4+eIs&h6WvWVAPI;PMc*b?Lk&E6 zIzTvLhzk*~h$0rik9WqSm;YHm=J~&f5$+f!i6Uhgr<P$=fiX8VO(n7vMuK6Qj8r}Tm>ci0A><+6CAjPNeHM5?7S0Ea$_p-s7d>F(D%ih!tEp%k+&0V(L)p#x!?kfAS+j^c(Be#Qq09x8{FK!95>bq0cCUqY>8*hnXphClqFSX6 z3o2;rCdOq_A>!3-&@w8D%V+Sj89(b ztnp5^o}q^z!c<&y?fD-g<0sE8iUTurXt60jDJIU4e%H>QJf@SRIkqfx2}Ga<0v912 z8SfIGx8n3zL)%`Z#s$nqJz6!>G({TN<*%w4WaxC$Nijif_~!y?7>t7lq@)N0(iSUYIfnjRn$KdHG&m8&MeW?Gdl37Xgdvn$5Y*^JT-btFmYI2uiRd1 zW>_L$0@pwh6ttMj#3+fxf?Ch|y#evXK`^#x4Se6u;7g3?P}D5Vs|Hs)`}f`Kt)#t6 zul3al33Lqh9^V4o!U=N~jnns$a<6ILHISwxrFG*I%M#WiJ9~eBB-xJ&clsd|d72b> z+Dtq)R*$P*&TAK76so8xJ?O$C+#$n3&RuE@ScS5{3q_oz<>nO)$u$vYDz$aA@*zz) znv&!~jcNJw^7ppQ_w->SwzqiTFf9~qY&6}oa{6%Sj3DC9>xEgp^;7>vjvuo&cKp#n)LG|y;+7i-PTbv z_5O;U7;$AJ^n93OEZH|NUr6Y}9xfgv@z2(v=`~yYsEBM8D7-iIKR|O;JmHtNx5Pz3 zN);C#XSiD6>rwBqI(z6`u8YSNWB+0%5~oz4TO8(BC^J%G_}W{ImEWt(KT(a1=U2V) zy3uBPD9W8tvp`ISNo)6MbATG%7w{}GamiDzC5TxAuW~EA27n1m{c1p*f!g5RTbBH& zxl5yH)F5jBV!r}jXmQQ-@RJsp2_{udhVbuEot>`GLfb}}^(%F`+?{QYlu?(!z;%V|VbN>- za+d>(?`grynW9;KM2G5ky zEG`L!RGD^~(|KoK!pYO?FdUIwYC`M$+o5PXWlQ2UqhTr+hAK|GC9!8W<@du=G7q+L z#!G=2sjMOe# z!o#xAvzmyyYP|;x3H)T+n3V0-gPh}!s{Rg+5$!4}_q4T4oPY|c+Wm#x0gKLC9y%SZ zkEWH=LHN5hc=;d1OPlazO&&npG&Cd#RvWU|)jxbtbOJ~Z) z&q$Vc3dG(sQ zKw>yn@;0pM1YOFAkm!;1ayc%+8?4?6n$nx5XqOi;?l=kT)jPZwGE?V7q&MNk$_Z-; z%kvrCG`mt~n}5&OQ72f;Tn4%<#!8dZd6>2EJvQ~{MlG583kz%d&w2j-qH0?UgSWKI zeU$XJB>M+}LZtS2s!7t^+(dGaETYQsd3LCL06nN6(scj#z+~js$wUsJjhOY4{~v zN-m}%A*TNg0+niyxhzeLgqX01k}^dVB3d@oP}R>9s$rtq!klbTi#?ClJ3(Asmy6^Q zN`nwnnhbM>+iSEHnf*l@+0NT5h~KF5T9(a3b@rN}LP=wuPQ0u5Pg{1-b*RV0b=X1! z8Y$6-cOH}+^>9y1G%5^#2HUlT7t)<1z;s%#G|H~(>Ex;;PGS7jK zneiSmk6cPY2)W`g{s{i+YZU8Pm8MluFJih8-4hA^%F=yiSgIOLS}=Xd^%;2Qy=(nv z&_@tPU}f?qdXn^#_t2OGca-MTZAi9E`C9aqMS8PM;?qT;Eprm2xX#k%beb`GaljlP zo?7IIOX5a+mFFcw>O&_~wtk1zY$2btxu^t;Hat?%ABVbNp=z1FHk`2-lY$oZH4B@U zg29?sLVwKHR=P0wwNeebUG>zwtr>&CZEmNSzSDb(e(L3PE~Xx0*l467y!cYjiXO;@ zNn{H~V(G5*GhpVKb~Q#T4Js*Dkv7R1yHZ?Uy8&Z^mE??1@N}t*P@Tp)k&CnJq$z%M zm#g2CW6DZ8wLo)Av^bZ%=9M=}G3A5Y-+2a%2xGCOCf4g2U|`x6k?^k@>FC^LnfuhE z^i%ZFQvK3epCQz8JypAc$qH0LDrDM6z%+eOsiW~ghQIT@k^XyHiLMQCAm4G@q@qzq7^RmIKlDXShM2>du^KxM~7B>oi zNbQuy;-ec$rdeBKaRtBfOOcXNZb49GO=JOWH!T`UAUXLw22Zg@u(Tb9cpB}oIDfB& zYN5_3SxO$XM-)yJsJPkLnz(#QiVdxbF!|9>1fjCGf2rY;u zTWl1caz=<|)A=me11qhq3VI*I5wKT{9XS1{X_{QcXT60K5|?DGcNbk{TGHa%`R;}Z z-2vbKSQ1o`0;Jii47As~4Gzn?2OeY0e>~W3!nZ`mfG(gZD&?D8RXA|mbOY@|!<2wP zoFpHJnxeH!j9eP4n>L_QnPMw*U3or&w^zCO?DfDb*YJf^fxwL@0^Av*L}|!Or8pW3 zVKmxZ1_N=`AmO&0qCblwK~YaPkU9c*!r6RIMTpjT#c1<~VWe0efKV*XNF`SDsp?=H zPOR5(UJpbU;EjC2S_)UB8Qr7Wex8c{+_2nm&*ml1w$9o zmb%}*G{Y$ucl>M(o{`Ve_C3kRTU$f?3_q~gMRx~?@uD<$tA(5`2$o_?s zp-PiWRUts;3U&qb4(jZzUaJs!7T4`_G0g5BSgQ%<)Ak@+e=_a ztO!FRR8*LtSaZ8u4YHVB{Kk4ux{SxyToJH{52OxT&M}THPs_!b+s=yP_m`y?kny-u zmE{36MIw$%DI?^z#9d$9N^G&E@hQP>$cq%2A;UJ4g39-fhmg7hHBi;F{A>O6J)A&r zfr@R)TXd}wZkWY;q1%Jz?hrYcl6EMzqH7HjF^MgvvsxnWEL)-(23m6I#|AtWdO7vv zjmN6ohd)1;+On?Ah}-WYusYdj@`h+;;ql*9`^qr%V^VOf8U5}wHP-C5#3?uDZEl)I zVK-pT0jS>BIq!t0IT{ww5uR&Nm*R*#h8M4xGDq=5mkIe!Z5_3L@(vR%GpDV}E8FMK zWt(J&Xb9Sp(k>Pey>sHp`mk@ox3r ztoM4IJ57`1T;#Aj*swg>$5WoVDA{x*#e@^lqn>AFjlV$8wA7i!G+Ktlq)ODL?_;J0 z{4zlRblu(`lErq{N1xCP-#5sM@a{5_NMZVw zm=kma#5sFzt&M~u5GBd5_=MzPEMp95F~s?ys@M0=&f56ta09L9XNC^X_koe<+=IPQFFgWB7kWxbOYY#YtE*!XcDJU#E} z@l>n1%Z|H6rABck@`&5pngKc?>J7Oc~u+iG| z-Vr#At&+|%cI-h>>$uR8VJx>~I}Shf@8BmW_!K?5WZ+>L*z~N#=}*SJ>TwKV{0?V> zHOyWL9!?3bdaC|ZEBunb^K69Q8t}iXHa{cmMHxTjw%OP%v(i|Ih?Va5o<9zf(Lb+of?_@ MUx6oIf9$7D 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%0DN$tAVKmoGCVBfbd%6I2E#n37-Gh$mMurQCQ! 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 diff --git a/lang/qet_nl_BE.qm b/lang/qet_nl_BE.qm deleted file mode 100644 index 9cfdf18f5d15333375767201778925c4c25a7a71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 367267 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 U?EK0zmm(woXQ1ELUwiHU17s-ZPXGV_ diff --git a/lang/qet_no.qm b/lang/qet_no.qm deleted file mode 100644 index 3d65959776f31ff14495f4d4991079dcc1707080..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30 kcmcE7ks@*G{hX<16=n7(EZlo{IRgU&Q(jUBh+<>}0Ms1{!~g&Q diff --git a/lang/qet_pl.qm b/lang/qet_pl.qm deleted file mode 100644 index 715aacd4fcd81f699fe211494fee7a3c55e837c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 308079 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

rAxdBfmnpPo0`Xx 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%0DYBi3J2bw~Vu z#AAcPuaTS9CwndS|JYgOoL5og?G5$ zmdsNf&X2^rccWU>AqDICS!%UHLBJwTsMYEqk8f71=iLFiGE%LnW&!*OQ)_y+#`CL_ z)jB_MeJ-S{^$FHbhxAaLuxXb+n%s~rpMP$$N#oz!&PZ$T#K#TgVbRlE4%{?6H;cK_)Hu$37U z%1yPWAJ)}QIH+EwvHvtOQuY2g0_)WS)jk!@0n|@c`@F#4KRrP0_X6{s?{n1tIrw_; zMAc^!_AROUbS>Mi*oT?yHjOQ0$Kp=QM-V z`G7j?#ZH{p6YB8qXYqH2seb;OF%FDY{a;{QjC`&7e`$caK~YDv$7jZTyCd;gGvDRv zh;Hcr&-YPB9Qb#R<$yZk_z9rFz0{F^alY0qR!8CUtFUI2I%+=Z&HoD2(Onh*^rY&T z8EB_GLk&pYj{e=M2JfAR^?s{5?OZQB57=FuF5$SQ4p67RLWb^CXH3Ln4TCDHp+R-= zJl9lpZfYHXQ+L&QakYTD7FEMYFu=~^YIs}Jy}kdc;ZXwU@CWL`IWE}mo~F2B^!O@jTse zUv+ttd3f&5QC(4_4ZxF|YD90;OP%hhQB~XlZZuY--<|_8dy=~0={&55FH<+3Z~-=Q zs~Vf}8qbe8sIi%Yalds?cE*y-GOJ^d7u93 z?u!5RzpX*`ae=yf-(Dc4s;dbJ=~%bFBr1 zZ#Ma1g+cx;Reh8B0^oLAHG3o4_f=JWd%zF)$^X=M)D`3BboKpB)Dh`T3{ove{kY%~ zRxD>36lJfdpS)f1{NWunw+&v;Wwx3Zo{IgBZ))BW%y(OUSMy$Dy}jx)^;-k<6LZ7V zZ!WjcUv*c%O>@J2QA_>)C;-UxrE0+jv?Hjk7Tm&le056Wfe`>Xb2ar~B%b#?tZA{B z51o=V3!dA9ZlRi9IUDG?Mw&kMAnH?pt5Ic^fBS zJyW#uuYy4Y?$gSD+X|#pHLXIeRNyqwpr}|_tK^c0eVjsCrG*WE*zVUVt-y2ramP%) z4>ZUeKWGka3`nyE25F70nnPGRkd5QDx{J_%1V(6eH{$t=L{F{$V7&h&RI4B71@L8> z=9GO4z~zj|R&Px%$Ti3&hHDK<^aNIL!=NZVS8EuHaq{Xdt&vj<*6ZW7CLDEUr#o8n z`?!C<6xLi$MWNsSWRU*M*IGGa+^bfgwY`tmo8Q)gFvw0^r~;8UWsA=hzz=1nnq|Gq(1K11_$-HzvI zmT11)UjkfA)O>f_0hHKjkVN;>{31}#{fW{1F8g9$%rw7e>oI@2qm3vOfqrI;HlhON zRY@+|$h306YuafebDYsWUudIi;`~RHH@R6cNMbV$@^<^QF<0ZTe(q$DHNT*Z`HOXv zo-4J0i~=B|`fFn+gaIEhUkiK}3#@%hEvVLWAa4`3Am;|a%VcU({=;?NQc;_lJ{6dK zwl?kB8+;BgU7KDH^Jn*DgXCV6L6*}-o4E_mn>A^x&7OvNeBD`ESW)yljc02M{(Ft_ zFIZa;{ScpT57ZWK!*xGeQ(Mvu&?QY$TPG{)P+EG_=u{#&?N zi*JZbx~lDz6R^)+U)xza37Eq;ZRa@jcb(U2JF}KyUQt}z-Ny&}yK}YOtI%(|Ju*l< zj~is~IvV7k!n8dCuiMf_+w&0h`m90P-r8svJ>9hZtEXUH$5uNyG!5@}h?a17Eh@)FvY_j)b4+DP;} z4hC6HtU;dGQA-ZYN8M0WOTNJId|!Y;-uAV2F5DgHKu;~T4f?I*PFmXJo&Xz1XlZBj z0c<;K7f|o9eiCvdvblC8;yL7NuXcD4YE2dwO>i-4@38B zzYp%jb2X#10wk2%Zcw!OtNpD}49|b8)cziN2-Iz^1>AlB8|-6|+M&Mx9%PY!<8{CJ z8x%#qS(Lv?KwllUs8eu%I(D{b<;Mb9HPm9U%)#|KZ?S~o^9O8)K~X8%V)qvJ>mYxF z^hG&~{eG;c(i}_i&Y1ty-eoDVtPSwF-z}y0Vt#U^pQY@?Vn8ItQg#-mFK?P#$`_fA zc~?nGr9Ze|+$vZqUç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�oTw|4 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 TOR%~9BP0JeQv2UiBX9pdFgevW diff --git a/lang/qet_rs.qm b/lang/qet_rs.qm deleted file mode 100644 index 882ec94f872bcc91341c74575147197e83150d8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44 zcmcE7ks@*G{hX<16=n7(EZlo{IRgU&YjIJ0P;dv3#Vg48SCjj{2ouX+9WG%2n?MhX diff --git a/lang/qet_ru.qm b/lang/qet_ru.qm deleted file mode 100644 index 167b5db046b6bfc75a0da32463c6fcc6745bd56d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 292077 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

uWmA8 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ʌGJwKnRc79qZJnAvQ-W* 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 TSAJMJ^`Empnf~Eg>COKF)M5S# diff --git a/lang/qet_sk.qm b/lang/qet_sk.qm deleted file mode 100644 index 9385f51f217892eacb209ec591f42ee69caca876..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37 scmcE7ks@*G{hX<16=n7(EZlo{IRgU&YjJjbuy+TL#m30^pM{A905As(-v9sr diff --git a/lang/qet_sl.qm b/lang/qet_sl.qm deleted file mode 100644 index 99f059cb78de6386d1d2d0592560883bbc1725b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40 vcmcE7ks@*G{hX<16=n7(EZlo{IRgU&YjI9|uxAI5#i_{nUyi$ diff --git a/lang/qet_sr.qm b/lang/qet_sr.qm deleted file mode 100644 index 882ec94f872bcc91341c74575147197e83150d8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44 zcmcE7ks@*G{hX<16=n7(EZlo{IRgU&YjIJ0P;dv3#Vg48SCjj{2ouX+9WG%2n?MhX diff --git a/lang/qet_sv.qm b/lang/qet_sv.qm deleted file mode 100644 index d2710693e020d8169aa3c4887b43d52677a11224..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 302609 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

EuL_vOe%m@C*Z-gJ{5 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 diff --git a/lang/qet_zh.qm b/lang/qet_zh.qm deleted file mode 100644 index 102998f409239d11a19feb1e5a5e0ba096ecbc46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 264181 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 From c4d2f0c4fb59028bac4a9a96a0bcd9498c2a0274 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 09:37:44 +0200 Subject: [PATCH 71/95] MacQetDeploy_arm64_cmake.sh: take .qm from build/lang (#751), fail if translations are missing --- misc/MacQetDeploy_arm64_cmake.sh | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index a527408a6..2d601537e 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -126,7 +126,8 @@ ELAPSED_TIME=$(($SECONDS - $START_TIME)) echo echo "The time of compilation is $(($ELAPSED_TIME/60)) min $(($ELAPSED_TIME%60)) sec" -# TODO: confirmer le chemin exact de sortie du .app selon CMakeLists.txt +# Le .app sort a la racine de $BUILD_DIR : add_executable(... MACOSX_BUNDLE) +# sans RUNTIME_OUTPUT_DIRECTORY dans CMakeLists.txt. echo "Copying built bundle into place..." cp -R "$BUILD_DIR/qelectrotech.app" "./$BUNDLE" @@ -182,9 +183,27 @@ fi if [ -d "${QET_TBT_DIR}" ]; then cp -R ${QET_TBT_DIR} $BUNDLE/Contents/Resources/titleblocks fi -if [ -d "${QET_LANG_DIR}" ]; then - mkdir $BUNDLE/Contents/Resources/lang - cp ${current_dir}/lang/*.qm $BUNDLE/Contents/Resources/lang +# Translations: since PR No. 751, .qm files are no longer versioned in +# lang/ (which now contains only .ts files). lrelease generates them during +# compilation in $BUILD_DIR/lang/ (OUTPUT_LOCATION “lang”, relative to the build). +# The bundle does not automatically include them (no MACOSX_PACKAGE_LOCATION), +# hence the manual copy to Contents/Resources/lang (= QET_LANG_PATH +# “../Resources/lang/” on APPLE). A missing .qm file stops the script rather than +# producing a signed and notarised DMG without translations. +QM_SRC="${current_dir}/${BUILD_DIR}/lang" +TS_COUNT=$(find "${QET_LANG_DIR}" -maxdepth 1 -name 'qet_*.ts' | wc -l | tr -d ' ') +if ! ls "${QM_SRC}"/qet_*.qm >/dev/null 2>&1; then + echo "ERROR: no .qm file in ${QM_SRC} (did lrelease run?)" + find "${current_dir}/${BUILD_DIR}" -name '*.qm' + exit 1 +fi +mkdir -p $BUNDLE/Contents/Resources/lang +cp "${QM_SRC}"/qet_*.qm $BUNDLE/Contents/Resources/lang/ +QM_COUNT=$(find $BUNDLE/Contents/Resources/lang -maxdepth 1 -name 'qet_*.qm' | wc -l | tr -d ' ') +echo "${QM_COUNT} .qm files copied to Contents/Resources/lang (expected: ${TS_COUNT})" +if [ "${QM_COUNT}" -ne "${TS_COUNT}" ]; then + echo "ERROR: missing translations (${QM_COUNT} .qm for ${TS_COUNT} .ts)" + exit 1 fi if [ -d "${QET_EXAMPLES_DIR}" ]; then mkdir $BUNDLE/Contents/Resources/examples From 1f647fa229436435108c40a75dd88fb64e48c670 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 09:40:35 +0200 Subject: [PATCH 72/95] CI/Windows-build: copy generated .qm from build/lang after #751 --- .github/workflows/windows-build.yml | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index f037f982c..fc182e1f4 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -217,10 +217,27 @@ jobs: cp -r "$GITHUB_WORKSPACE/examples" "$FILES/examples" || true cp -r "$GITHUB_WORKSPACE/fonts" "$FILES/fonts" || true - cp -r "$GITHUB_WORKSPACE/lang" "$FILES/lang" || true - find "$GITHUB_WORKSPACE/build" -name "*.qm" -exec cp {} "$FILES/lang/" \; 2>/dev/null || true - echo "=== .qm files in files/lang/ ===" - ls "$FILES/lang/"*.qm 2>/dev/null | wc -l || echo "0 .qm files" + # --- Translations --- + # Since PR #751 the .qm files are no longer tracked in git: lrelease + # generates them in build/lang/ (OUTPUT_LOCATION "lang", relative to + # the build dir). The source lang/ dir is no longer copied, as it now + # only holds the .ts files (useless at runtime). Any missing .qm makes + # the job fail instead of silently shipping an untranslated build. + QM_SRC="$GITHUB_WORKSPACE/build/lang" + TS_COUNT=$(find "$GITHUB_WORKSPACE/lang" -maxdepth 1 -name 'qet_*.ts' | wc -l) + mkdir -p "$FILES/lang" + if ! compgen -G "$QM_SRC/qet_*.qm" > /dev/null; then + echo "ERROR: no .qm file in $QM_SRC (did lrelease run?)" + find "$GITHUB_WORKSPACE/build" -name '*.qm' || true + exit 1 + fi + cp "$QM_SRC"/qet_*.qm "$FILES/lang/" + QM_COUNT=$(find "$FILES/lang" -maxdepth 1 -name 'qet_*.qm' | wc -l) + echo "=== $QM_COUNT .qm files copied to files/lang/ (expected: $TS_COUNT) ===" + if [ "$QM_COUNT" -ne "$TS_COUNT" ]; then + echo "ERROR: missing translations ($QM_COUNT .qm for $TS_COUNT .ts)" + exit 1 + fi for f in LICENSE ChangeLog CREDIT README ELEMENTS.LICENSE; do cp "$GITHUB_WORKSPACE/$f" "$FILES/$f" 2>/dev/null || true From a45a984b32d32831badcb058f162745b25aa4533 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 10:00:35 +0200 Subject: [PATCH 73/95] CI/Windows: use find instead of compgen -G to locate .qm files $GITHUB_WORKSPACE is a Windows path under MSYS2 (D:\a\...); compgen -G treats its backslashes as escapes, so the generated .qm were not found. --- .github/workflows/windows-build.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index fc182e1f4..34d22f0ce 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -226,12 +226,15 @@ jobs: QM_SRC="$GITHUB_WORKSPACE/build/lang" TS_COUNT=$(find "$GITHUB_WORKSPACE/lang" -maxdepth 1 -name 'qet_*.ts' | wc -l) mkdir -p "$FILES/lang" - if ! compgen -G "$QM_SRC/qet_*.qm" > /dev/null; then + # find only, no shell glob: $GITHUB_WORKSPACE is a Windows path + # (D:\a\...) and its backslashes break glob-based tests (compgen -G). + QM_FOUND=$(find "$QM_SRC" -maxdepth 1 -name 'qet_*.qm' 2>/dev/null | wc -l) + if [ "$QM_FOUND" -eq 0 ]; then echo "ERROR: no .qm file in $QM_SRC (did lrelease run?)" find "$GITHUB_WORKSPACE/build" -name '*.qm' || true exit 1 fi - cp "$QM_SRC"/qet_*.qm "$FILES/lang/" + find "$QM_SRC" -maxdepth 1 -name 'qet_*.qm' -exec cp {} "$FILES/lang/" \; QM_COUNT=$(find "$FILES/lang" -maxdepth 1 -name 'qet_*.qm' | wc -l) echo "=== $QM_COUNT .qm files copied to files/lang/ (expected: $TS_COUNT) ===" if [ "$QM_COUNT" -ne "$TS_COUNT" ]; then From 2fcf3540dd374a6054a7a697e818b612580ab929 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 10:23:17 +0200 Subject: [PATCH 74/95] macOS: pass -libpath=/opt/homebrew/lib to macdeployqt, abort on unresolved rpath Homebrew libs (brotli, webp, sharpyuv) now reference their deps via @rpath, which macdeployqt could not resolve, leaving them out of the bundle. --- misc/MacQetDeploy_arm64_cmake.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index 2d601537e..49ae7fc94 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -146,7 +146,11 @@ if [ ! -d $BUNDLE ] ; then exit 1 fi -macdeployqt $BUNDLE +macdeployqt $BUNDLE -libpath=/opt/homebrew/lib 2>&1 | tee /tmp/macdeployqt.log +if grep -q "Cannot resolve rpath" /tmp/macdeployqt.log ; then + echo "ERROR: macdeployqt could not bundle some dependencies, aborting." + exit 1 +fi ### install Info.plist and app icon ################################# # NOTE: this must run AFTER macdeployqt, not before. macdeployqt From 7d4cbc30f14edac82561b5c4293d7d6c2fa6c234 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 10:45:24 +0200 Subject: [PATCH 75/95] cmake: add qet_ko.ts to TS_FILES qet_ko.qm was tracked in git but qet_ko.ts was never listed in TS_FILES, so Korean was no longer built after #751 removed the tracked .qm files. --- cmake/qet_compilation_vars.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/cmake/qet_compilation_vars.cmake b/cmake/qet_compilation_vars.cmake index dd01b6664..803aa6dee 100644 --- a/cmake/qet_compilation_vars.cmake +++ b/cmake/qet_compilation_vars.cmake @@ -858,6 +858,7 @@ set(TS_FILES ${QET_DIR}/lang/qet_hu.ts ${QET_DIR}/lang/qet_it.ts ${QET_DIR}/lang/qet_ja.ts + ${QET_DIR}/lang/qet_ko.ts ${QET_DIR}/lang/qet_mn.ts ${QET_DIR}/lang/qet_nb.ts ${QET_DIR}/lang/qet_nl.ts From 6bc53277ec049d21f831e723787d69ae1b7bd176 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 10:50:48 +0200 Subject: [PATCH 76/95] macOS: bundle Homebrew @rpath deps macdeployqt cannot resolve Recent Homebrew bottles (brotli, webp, sharpyuv) reference their deps as @rpath/libX.dylib, which macdeployqt skips. Copy them from /opt/homebrew/lib into Contents/Frameworks after macdeployqt, and abort if any @rpath or /opt/homebrew reference remains unresolved. Drop the ineffective -libpath. --- .github/workflows/windows-build.yml | 36 ++++++----- misc/MacQetDeploy_arm64_cmake.sh | 94 +++++++++++++++++++++++------ 2 files changed, 96 insertions(+), 34 deletions(-) diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index 34d22f0ce..956f8f697 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -220,25 +220,31 @@ jobs: # --- Translations --- # Since PR #751 the .qm files are no longer tracked in git: lrelease # generates them in build/lang/ (OUTPUT_LOCATION "lang", relative to - # the build dir). The source lang/ dir is no longer copied, as it now - # only holds the .ts files (useless at runtime). Any missing .qm makes - # the job fail instead of silently shipping an untranslated build. + # the build dir). Expected set = the .ts listed in TS_FILES + # (cmake/qet_compilation_vars.cmake): a missing .qm fails the job + # instead of silently shipping an untranslated build; a .ts present + # in lang/ but not listed in TS_FILES only raises a warning. + # find/grep only, no shell glob: $GITHUB_WORKSPACE is a Windows path + # (D:\a\...) and its backslashes break glob patterns. QM_SRC="$GITHUB_WORKSPACE/build/lang" - TS_COUNT=$(find "$GITHUB_WORKSPACE/lang" -maxdepth 1 -name 'qet_*.ts' | wc -l) mkdir -p "$FILES/lang" - # find only, no shell glob: $GITHUB_WORKSPACE is a Windows path - # (D:\a\...) and its backslashes break glob-based tests (compgen -G). - QM_FOUND=$(find "$QM_SRC" -maxdepth 1 -name 'qet_*.qm' 2>/dev/null | wc -l) - if [ "$QM_FOUND" -eq 0 ]; then - echo "ERROR: no .qm file in $QM_SRC (did lrelease run?)" - find "$GITHUB_WORKSPACE/build" -name '*.qm' || true - exit 1 + TS_LISTED=$(grep -o 'lang/qet_[A-Za-z_]*\.ts' "$GITHUB_WORKSPACE/cmake/qet_compilation_vars.cmake" \ + | sed -e 's#^lang/##' -e 's#\.ts$##' | LC_ALL=C sort -u || true) + [ -n "$TS_LISTED" ] || { echo "ERROR: cannot read TS_FILES from cmake/qet_compilation_vars.cmake"; exit 1; } + TS_PRESENT=$(find "$GITHUB_WORKSPACE/lang" -maxdepth 1 -name 'qet_*.ts' -exec basename {} .ts \; | LC_ALL=C sort) + UNLISTED=$(LC_ALL=C comm -13 <(echo "$TS_LISTED") <(echo "$TS_PRESENT")) + if [ -n "$UNLISTED" ]; then + echo "::warning::.ts files not in TS_FILES, no .qm built:" $UNLISTED fi - find "$QM_SRC" -maxdepth 1 -name 'qet_*.qm' -exec cp {} "$FILES/lang/" \; - QM_COUNT=$(find "$FILES/lang" -maxdepth 1 -name 'qet_*.qm' | wc -l) + find "$QM_SRC" -maxdepth 1 -name 'qet_*.qm' -exec cp {} "$FILES/lang/" \; 2>/dev/null || true + QM_PRESENT=$(find "$FILES/lang" -maxdepth 1 -name 'qet_*.qm' -exec basename {} .qm \; | LC_ALL=C sort) + MISSING=$(LC_ALL=C comm -23 <(echo "$TS_LISTED") <(echo "$QM_PRESENT")) + QM_COUNT=$(printf '%s\n' "$QM_PRESENT" | grep -c . || true) + TS_COUNT=$(printf '%s\n' "$TS_LISTED" | grep -c .) echo "=== $QM_COUNT .qm files copied to files/lang/ (expected: $TS_COUNT) ===" - if [ "$QM_COUNT" -ne "$TS_COUNT" ]; then - echo "ERROR: missing translations ($QM_COUNT .qm for $TS_COUNT .ts)" + if [ -n "$MISSING" ]; then + echo "ERROR: missing translations:" $MISSING + find "$GITHUB_WORKSPACE/build" -name '*.qm' || true exit 1 fi diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index 49ae7fc94..300441024 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -146,11 +146,59 @@ if [ ! -d $BUNDLE ] ; then exit 1 fi -macdeployqt $BUNDLE -libpath=/opt/homebrew/lib 2>&1 | tee /tmp/macdeployqt.log -if grep -q "Cannot resolve rpath" /tmp/macdeployqt.log ; then - echo "ERROR: macdeployqt could not bundle some dependencies, aborting." +macdeployqt $BUNDLE + +### fix @rpath dependencies macdeployqt could not resolve ########### +# Recent Homebrew bottles (brotli, webp, sharpyuv...) reference their own +# dependencies as @rpath/libX.dylib. macdeployqt only resolves @rpath in +# Contents/lib and in Qt's lib dir (-libpath does not help), so it prints +# "Cannot resolve rpath" and leaves them out. Copy them from +# /opt/homebrew/lib into Contents/Frameworks: the executable's LC_RPATH +# (@executable_path/../Frameworks) lets dyld find them there. They are +# signed below with everything else in Frameworks/. +echo +echo "______________________________________________________________" +echo "Fix unresolved @rpath dependencies:" + +FW="$BUNDLE/Contents/Frameworks" + +# List the @rpath/libX.dylib names referenced by every Mach-O in the bundle +list_rpath_libs() { + find "$BUNDLE/Contents/MacOS" "$FW" "$BUNDLE/Contents/PlugIns" -type f \ + \( -name '*.dylib' -o -perm -u+x \) 2>/dev/null | while read bin; do + otool -L "$bin" 2>/dev/null \ + | awk 'NR>1 && $1 ~ /^@rpath\/[^\/]+\.dylib$/ { sub("^@rpath/", "", $1); print $1 }' + done | LC_ALL=C sort -u +} + +if ! otool -l "$BUNDLE/Contents/MacOS/$APPNAME" | grep -q "@executable_path/../Frameworks" ; then + install_name_tool -add_rpath "@executable_path/../Frameworks" "$BUNDLE/Contents/MacOS/$APPNAME" + echo " Added LC_RPATH @executable_path/../Frameworks to $APPNAME" +fi + +for PASS in 1 2 3; do + list_rpath_libs | while read lib; do + if [ ! -e "$FW/$lib" ] && [ -e "/opt/homebrew/lib/$lib" ]; then + cp -L "/opt/homebrew/lib/$lib" "$FW/$lib" + chmod u+w "$FW/$lib" + echo " Copied (pass $PASS): $lib" + fi + done +done + +UNRESOLVED=$(list_rpath_libs | while read lib; do [ -e "$FW/$lib" ] || echo "$lib"; done) +if [ -n "$UNRESOLVED" ]; then + echo "ERROR: @rpath libraries still missing from Frameworks/:" $UNRESOLVED exit 1 fi +HOMEBREW_REFS=$(find "$BUNDLE/Contents/MacOS" "$FW" "$BUNDLE/Contents/PlugIns" -type f \ + \( -name '*.dylib' -o -perm -u+x \) -exec otool -L {} \; 2>/dev/null | grep "/opt/homebrew/" || true) +if [ -n "$HOMEBREW_REFS" ]; then + echo "ERROR: bundle still references Homebrew paths:" + echo "$HOMEBREW_REFS" + exit 1 +fi +echo "All @rpath dependencies resolved inside the bundle." ### install Info.plist and app icon ################################# # NOTE: this must run AFTER macdeployqt, not before. macdeployqt @@ -187,26 +235,34 @@ fi if [ -d "${QET_TBT_DIR}" ]; then cp -R ${QET_TBT_DIR} $BUNDLE/Contents/Resources/titleblocks fi -# Translations: since PR No. 751, .qm files are no longer versioned in -# lang/ (which now contains only .ts files). lrelease generates them during -# compilation in $BUILD_DIR/lang/ (OUTPUT_LOCATION “lang”, relative to the build). -# The bundle does not automatically include them (no MACOSX_PACKAGE_LOCATION), -# hence the manual copy to Contents/Resources/lang (= QET_LANG_PATH -# “../Resources/lang/” on APPLE). A missing .qm file stops the script rather than -# producing a signed and notarised DMG without translations. +# Traductions : depuis la PR #751, les .qm ne sont plus versionnes ; lrelease +# les genere dans $BUILD_DIR/lang/. Jeu attendu = les .ts listes dans TS_FILES +# (cmake/qet_compilation_vars.cmake) : un .qm manquant arrete le script, un +# .ts present dans lang/ mais absent de TS_FILES donne seulement un WARNING. +# Fichiers temporaires plutot que <(...) : /bin/sh de macOS (bash 3.2 en mode +# POSIX) n'a pas la substitution de processus. QM_SRC="${current_dir}/${BUILD_DIR}/lang" -TS_COUNT=$(find "${QET_LANG_DIR}" -maxdepth 1 -name 'qet_*.ts' | wc -l | tr -d ' ') -if ! ls "${QM_SRC}"/qet_*.qm >/dev/null 2>&1; then - echo "ERROR: no .qm file in ${QM_SRC} (did lrelease run?)" - find "${current_dir}/${BUILD_DIR}" -name '*.qm' +QM_TMP=$(mktemp -d /tmp/qet_qm.XXXXXX) +grep -o 'lang/qet_[A-Za-z_]*\.ts' "${current_dir}/cmake/qet_compilation_vars.cmake" \ + | sed -e 's#^lang/##' -e 's#\.ts$##' | LC_ALL=C sort -u > "$QM_TMP/listed" +if [ ! -s "$QM_TMP/listed" ]; then + echo "ERROR: cannot read TS_FILES from cmake/qet_compilation_vars.cmake" + rm -rf "$QM_TMP" exit 1 fi +find "${QET_LANG_DIR}" -maxdepth 1 -name 'qet_*.ts' -exec basename {} .ts \; | LC_ALL=C sort > "$QM_TMP/present" +UNLISTED=$(LC_ALL=C comm -13 "$QM_TMP/listed" "$QM_TMP/present") +if [ -n "$UNLISTED" ]; then + echo "WARNING: .ts files not in TS_FILES, no .qm built:" $UNLISTED +fi mkdir -p $BUNDLE/Contents/Resources/lang -cp "${QM_SRC}"/qet_*.qm $BUNDLE/Contents/Resources/lang/ -QM_COUNT=$(find $BUNDLE/Contents/Resources/lang -maxdepth 1 -name 'qet_*.qm' | wc -l | tr -d ' ') -echo "${QM_COUNT} .qm files copied to Contents/Resources/lang (expected: ${TS_COUNT})" -if [ "${QM_COUNT}" -ne "${TS_COUNT}" ]; then - echo "ERROR: missing translations (${QM_COUNT} .qm for ${TS_COUNT} .ts)" +find "${QM_SRC}" -maxdepth 1 -name 'qet_*.qm' -exec cp {} $BUNDLE/Contents/Resources/lang/ \; 2>/dev/null +find $BUNDLE/Contents/Resources/lang -maxdepth 1 -name 'qet_*.qm' -exec basename {} .qm \; | LC_ALL=C sort > "$QM_TMP/built" +MISSING=$(LC_ALL=C comm -23 "$QM_TMP/listed" "$QM_TMP/built") +echo "$(wc -l < "$QM_TMP/built" | tr -d ' ') .qm files copied to Contents/Resources/lang (expected: $(wc -l < "$QM_TMP/listed" | tr -d ' '))" +rm -rf "$QM_TMP" +if [ -n "$MISSING" ]; then + echo "ERROR: missing translations:" $MISSING exit 1 fi if [ -d "${QET_EXAMPLES_DIR}" ]; then From 10e5cd00f4bf60261d2c65e2200eaf0b5a100bf6 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 11:01:05 +0200 Subject: [PATCH 77/95] macOS: rewrite absolute Homebrew refs and install ids left by macdeployqt macdeployqt kept /opt/homebrew paths (e.g. libbrotlicommon's install id). Rewrite them to @rpath/libX.dylib, copying the library into Frameworks if needed, over 3 passes to handle chained dependencies. --- misc/MacQetDeploy_arm64_cmake.sh | 76 ++++++++++++++++++++++++-------- 1 file changed, 58 insertions(+), 18 deletions(-) diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index 300441024..d7fcec7e0 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -148,26 +148,42 @@ fi macdeployqt $BUNDLE -### fix @rpath dependencies macdeployqt could not resolve ########### +### fix Homebrew dependencies macdeployqt could not handle ########## # Recent Homebrew bottles (brotli, webp, sharpyuv...) reference their own # dependencies as @rpath/libX.dylib. macdeployqt only resolves @rpath in -# Contents/lib and in Qt's lib dir (-libpath does not help), so it prints -# "Cannot resolve rpath" and leaves them out. Copy them from -# /opt/homebrew/lib into Contents/Frameworks: the executable's LC_RPATH -# (@executable_path/../Frameworks) lets dyld find them there. They are -# signed below with everything else in Frameworks/. +# Contents/lib and in Qt's lib dir (-libpath does not help): it prints +# "Cannot resolve rpath" and leaves some references untouched, either +# absolute /opt/homebrew paths or @rpath libs missing from the bundle. +# Fix both here: every /opt/homebrew reference is rewritten to +# @rpath/libX.dylib (install ids too), and every @rpath/libX.dylib is +# copied into Contents/Frameworks, where the executable's LC_RPATH +# (@executable_path/../Frameworks) lets dyld find it. Everything is signed +# below with the rest of Frameworks/. echo echo "______________________________________________________________" -echo "Fix unresolved @rpath dependencies:" +echo "Fix Homebrew dependencies left by macdeployqt:" FW="$BUNDLE/Contents/Frameworks" +chmod -R u+w "$BUNDLE/Contents/MacOS" "$FW" "$BUNDLE/Contents/PlugIns" 2>/dev/null -# List the @rpath/libX.dylib names referenced by every Mach-O in the bundle -list_rpath_libs() { +# Every Mach-O candidate of the bundle (otool silently ignores the others) +list_macho() { find "$BUNDLE/Contents/MacOS" "$FW" "$BUNDLE/Contents/PlugIns" -type f \ - \( -name '*.dylib' -o -perm -u+x \) 2>/dev/null | while read bin; do - otool -L "$bin" 2>/dev/null \ - | awk 'NR>1 && $1 ~ /^@rpath\/[^\/]+\.dylib$/ { sub("^@rpath/", "", $1); print $1 }' + \( -name '*.dylib' -o -perm -u+x \) 2>/dev/null +} + +# Dependencies of one binary, without its own install id (dylibs only) +list_deps() { + _id=$(otool -D "$1" 2>/dev/null | sed -n 2p) + otool -L "$1" 2>/dev/null | awk 'NR>1 { print $1 }' | while read _dep; do + [ "$_dep" = "$_id" ] || echo "$_dep" + done +} + +# The @rpath/libX.dylib names referenced anywhere in the bundle +list_rpath_libs() { + list_macho | while read bin; do + list_deps "$bin" | sed -n 's#^@rpath/\([^/]*\.dylib\)$#\1#p' done | LC_ALL=C sort -u } @@ -176,29 +192,53 @@ if ! otool -l "$BUNDLE/Contents/MacOS/$APPNAME" | grep -q "@executable_path/../F echo " Added LC_RPATH @executable_path/../Frameworks to $APPNAME" fi +# 3 passes, since each copied library can bring its own dependencies: +# a. rewrite absolute /opt/homebrew references (install ids included), +# copying the referenced library into Frameworks/ if needed +# b. copy the @rpath/libX.dylib still missing from Frameworks/ for PASS in 1 2 3; do + list_macho | while read bin; do + _id=$(otool -D "$bin" 2>/dev/null | sed -n 2p) + case "$_id" in + /opt/homebrew/*) + install_name_tool -id "@rpath/$(basename "$_id")" "$bin" 2>/dev/null + echo " Fixed id (pass $PASS): $(basename "$bin")" + ;; + esac + list_deps "$bin" | grep '^/opt/homebrew/' | while read ref; do + name=$(basename "$ref") + if [ ! -e "$FW/$name" ]; then + cp -L "$ref" "$FW/$name" && chmod u+w "$FW/$name" + echo " Copied (pass $PASS): $name" + fi + install_name_tool -change "$ref" "@rpath/$name" "$bin" 2>/dev/null + echo " Fixed ref (pass $PASS): $(basename "$bin") -> @rpath/$name" + done + done list_rpath_libs | while read lib; do if [ ! -e "$FW/$lib" ] && [ -e "/opt/homebrew/lib/$lib" ]; then - cp -L "/opt/homebrew/lib/$lib" "$FW/$lib" - chmod u+w "$FW/$lib" - echo " Copied (pass $PASS): $lib" + cp -L "/opt/homebrew/lib/$lib" "$FW/$lib" && chmod u+w "$FW/$lib" + echo " Copied (pass $PASS): $lib" fi done done +# 3. Checks UNRESOLVED=$(list_rpath_libs | while read lib; do [ -e "$FW/$lib" ] || echo "$lib"; done) if [ -n "$UNRESOLVED" ]; then echo "ERROR: @rpath libraries still missing from Frameworks/:" $UNRESOLVED exit 1 fi -HOMEBREW_REFS=$(find "$BUNDLE/Contents/MacOS" "$FW" "$BUNDLE/Contents/PlugIns" -type f \ - \( -name '*.dylib' -o -perm -u+x \) -exec otool -L {} \; 2>/dev/null | grep "/opt/homebrew/" || true) +HOMEBREW_REFS=$(list_macho | while read bin; do + otool -L "$bin" 2>/dev/null | awk 'NR>1 { print $1 }' | grep '^/opt/homebrew/' \ + | sed "s#^# $(basename "$bin") -> #" +done) if [ -n "$HOMEBREW_REFS" ]; then echo "ERROR: bundle still references Homebrew paths:" echo "$HOMEBREW_REFS" exit 1 fi -echo "All @rpath dependencies resolved inside the bundle." +echo "All dependencies resolved inside the bundle." ### install Info.plist and app icon ################################# # NOTE: this must run AFTER macdeployqt, not before. macdeployqt From e982778526f58431a735c0f295f5b31088d28294 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 11:35:17 +0200 Subject: [PATCH 78/95] macOS: bundle Qt's own translations (qtbase) as lang/qt_XX.qm Standard buttons (OK/Cancel) and dialogs are translated by qtbase_XX.qm, which macdeployqt does not deploy. QETApp::setLanguage() falls back to lang/qt_XX.qm, so copy each qtbase_XX.qm there, with aliases for QET languages Qt only ships with a region (pt -> pt_PT, zh -> zh_CN). --- misc/MacQetDeploy_arm64_cmake.sh | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index d7fcec7e0..c988de83e 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -300,6 +300,41 @@ find "${QM_SRC}" -maxdepth 1 -name 'qet_*.qm' -exec cp {} $BUNDLE/Contents/Resou find $BUNDLE/Contents/Resources/lang -maxdepth 1 -name 'qet_*.qm' -exec basename {} .qm \; | LC_ALL=C sort > "$QM_TMP/built" MISSING=$(LC_ALL=C comm -23 "$QM_TMP/listed" "$QM_TMP/built") echo "$(wc -l < "$QM_TMP/built" | tr -d ' ') .qm files copied to Contents/Resources/lang (expected: $(wc -l < "$QM_TMP/listed" | tr -d ' '))" + +# Traductions de Qt lui-meme (boutons OK/Annuler, dialogues standard...) : +# elles viennent de qtbase_XX.qm, pas des .ts de QET, et macdeployqt ne les +# deploie pas. QETApp::setLanguage() charge "qt_XX" depuis le chemin de +# traductions de Qt (absent du bundle), puis depuis le dossier lang/ de QET : +# on y depose donc chaque qtbase_XX.qm sous le nom qt_XX.qm. qtbase_XX.qm est +# autonome, contrairement aux qt_XX.qm de Qt qui dependent de tous les modules. +QT_TR_DIR=$("$QT_PREFIX/bin/qtpaths" --query QT_INSTALL_TRANSLATIONS 2>/dev/null) +[ -d "$QT_TR_DIR" ] || QT_TR_DIR="$QT_PREFIX/share/qt/translations" +LANG_DST="$BUNDLE/Contents/Resources/lang" +find "$QT_TR_DIR" -maxdepth 1 -name 'qtbase_*.qm' 2>/dev/null | while read f; do + l=$(basename "$f" .qm | sed 's/^qtbase_//') + cp "$f" "$LANG_DST/qt_$l.qm" +done +# Langues QET sans equivalent Qt exact (pt -> pt_PT, zh -> zh_CN...) : +# QTranslator ne sait que raccourcir le code (fr_FR -> fr), pas l'allonger. +# On prefere la variante "principale" (pt_PT), sinon la premiere trouvee. +sed 's/^qet_//' "$QM_TMP/listed" | while read l; do + if [ ! -e "$LANG_DST/qt_$l.qm" ]; then + main="$QT_TR_DIR/qtbase_${l}_$(echo "$l" | tr 'a-z' 'A-Z').qm" + if [ -e "$main" ]; then + alt="$main" + else + alt=$(find "$QT_TR_DIR" -maxdepth 1 -name "qtbase_${l}_*.qm" 2>/dev/null | LC_ALL=C sort | head -1) + fi + [ -n "$alt" ] && cp "$alt" "$LANG_DST/qt_$l.qm" + fi +done +QT_QM_COUNT=$(find "$LANG_DST" -maxdepth 1 -name 'qt_*.qm' | wc -l | tr -d ' ') +echo "${QT_QM_COUNT} Qt translation files (qt_*.qm) copied from ${QT_TR_DIR}" +if [ "${QT_QM_COUNT}" -eq 0 ]; then + echo "ERROR: no qtbase_*.qm found in ${QT_TR_DIR}" + rm -rf "$QM_TMP" + exit 1 +fi rm -rf "$QM_TMP" if [ -n "$MISSING" ]; then echo "ERROR: missing translations:" $MISSING From 4b675dda1b5934c2c57657b76ccf3838ee6ef0ab Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 11:40:10 +0200 Subject: [PATCH 79/95] CI/Windows: bundle Qt's own translations (qtbase) as lang/qt_XX.qm windeployqt runs with --no-translations, so standard buttons (OK/Cancel) and dialogs stayed in English. Copy each qtbase_XX.qm from the MSYS2 Qt translations into files/lang/qt_XX.qm, where QETApp::setLanguage() looks, with aliases for QET languages Qt only ships with a region (pt, zh). --- .github/workflows/windows-build.yml | 35 +++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index 956f8f697..86e47e7cc 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -248,6 +248,41 @@ jobs: exit 1 fi + # Qt's own translations (OK/Cancel buttons, standard dialogs...): + # they come from qtbase_XX.qm, not from QET's .ts, and windeployqt + # runs with --no-translations. QETApp::setLanguage() falls back to + # lang/qt_XX.qm, so copy each qtbase_XX.qm there under that name + # (qtbase_XX.qm is standalone, unlike Qt's qt_XX.qm meta catalogs). + QT_TR_DIR=/ucrt64/share/qt6/translations + if [ ! -d "$QT_TR_DIR" ]; then + QT_TR_DIR=$(cygpath -u "$(/ucrt64/bin/qtpaths6 --query QT_INSTALL_TRANSLATIONS 2>/dev/null)" 2>/dev/null || true) + fi + find "$QT_TR_DIR" -maxdepth 1 -name 'qtbase_*.qm' 2>/dev/null | while read -r f; do + l=$(basename "$f" .qm) + cp "$f" "$FILES/lang/qt_${l#qtbase_}.qm" + done + # QET languages Qt only ships with a region (pt -> pt_PT, zh -> zh_CN): + # QTranslator only shortens codes (fr_FR -> fr), it never extends them. + for q in $TS_LISTED; do + l=${q#qet_} + if [ ! -e "$FILES/lang/qt_$l.qm" ]; then + if [ -e "$QT_TR_DIR/qtbase_${l}_${l^^}.qm" ]; then + alt="$QT_TR_DIR/qtbase_${l}_${l^^}.qm" + else + alt=$(find "$QT_TR_DIR" -maxdepth 1 -name "qtbase_${l}_*.qm" 2>/dev/null | LC_ALL=C sort | head -1 || true) + fi + if [ -n "$alt" ]; then + cp "$alt" "$FILES/lang/qt_$l.qm" + fi + fi + done + QT_QM_COUNT=$(find "$FILES/lang" -maxdepth 1 -name 'qt_*.qm' | wc -l) + echo "=== $QT_QM_COUNT Qt translation files (qt_*.qm) copied from $QT_TR_DIR ===" + if [ "$QT_QM_COUNT" -eq 0 ]; then + echo "ERROR: no qtbase_*.qm found in '$QT_TR_DIR' (mingw-w64-ucrt-x86_64-qt6-translations installed?)" + exit 1 + fi + for f in LICENSE ChangeLog CREDIT README ELEMENTS.LICENSE; do cp "$GITHUB_WORKSPACE/$f" "$FILES/$f" 2>/dev/null || true done From 2620d34b5947112aeb3396daa4c2adf92e8d028d Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 11:49:58 +0200 Subject: [PATCH 80/95] macOS: look for Qt translations in the qttranslations Homebrew formula --- misc/MacQetDeploy_arm64_cmake.sh | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index c988de83e..45aba6bab 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -307,8 +307,21 @@ echo "$(wc -l < "$QM_TMP/built" | tr -d ' ') .qm files copied to Contents/Resour # traductions de Qt (absent du bundle), puis depuis le dossier lang/ de QET : # on y depose donc chaque qtbase_XX.qm sous le nom qt_XX.qm. qtbase_XX.qm est # autonome, contrairement aux qt_XX.qm de Qt qui dependent de tous les modules. -QT_TR_DIR=$("$QT_PREFIX/bin/qtpaths" --query QT_INSTALL_TRANSLATIONS 2>/dev/null) -[ -d "$QT_TR_DIR" ] || QT_TR_DIR="$QT_PREFIX/share/qt/translations" +# Premier dossier contenant des qtbase_*.qm : celui annonce par qtpaths, puis +# la formule Homebrew separee qttranslations (non liee dans /opt/homebrew/share, +# d'ou l'absence des qtbase_*.qm dans le dossier annonce par qtpaths), puis +# les autres emplacements Homebrew possibles. +QT_TR_DIR="" +for d in "$("$QT_PREFIX/bin/qtpaths" --query QT_INSTALL_TRANSLATIONS 2>/dev/null)" \ + "$(brew --prefix qttranslations 2>/dev/null)/share/qt/translations" \ + "$QT_PREFIX/share/qt/translations" \ + /opt/homebrew/share/qt/translations \ + /opt/homebrew/opt/*/share/qt/translations ; do + if ls "$d"/qtbase_*.qm >/dev/null 2>&1 ; then + QT_TR_DIR="$d" + break + fi +done LANG_DST="$BUNDLE/Contents/Resources/lang" find "$QT_TR_DIR" -maxdepth 1 -name 'qtbase_*.qm' 2>/dev/null | while read f; do l=$(basename "$f" .qm | sed 's/^qtbase_//') @@ -329,9 +342,10 @@ sed 's/^qet_//' "$QM_TMP/listed" | while read l; do fi done QT_QM_COUNT=$(find "$LANG_DST" -maxdepth 1 -name 'qt_*.qm' | wc -l | tr -d ' ') -echo "${QT_QM_COUNT} Qt translation files (qt_*.qm) copied from ${QT_TR_DIR}" +echo "${QT_QM_COUNT} Qt translation files (qt_*.qm) copied from ${QT_TR_DIR:-}" if [ "${QT_QM_COUNT}" -eq 0 ]; then - echo "ERROR: no qtbase_*.qm found in ${QT_TR_DIR}" + echo "ERROR: no qtbase_*.qm found (Qt translations not installed?)." + echo " Check with: find /opt/homebrew -name 'qtbase_fr.qm'" rm -rf "$QM_TMP" exit 1 fi From bc06f7d444a7b73e9dd91d89754a6795ab348dcd Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 12:01:15 +0200 Subject: [PATCH 81/95] macOS: follow symlinks when looking for Qt translations Homebrew's share/qt/translations is a symlink to the qttranslations keg; find without -L did not descend into it and found no qtbase_*.qm. --- misc/MacQetDeploy_arm64_cmake.sh | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/misc/MacQetDeploy_arm64_cmake.sh b/misc/MacQetDeploy_arm64_cmake.sh index 45aba6bab..74598afa2 100644 --- a/misc/MacQetDeploy_arm64_cmake.sh +++ b/misc/MacQetDeploy_arm64_cmake.sh @@ -308,9 +308,10 @@ echo "$(wc -l < "$QM_TMP/built" | tr -d ' ') .qm files copied to Contents/Resour # on y depose donc chaque qtbase_XX.qm sous le nom qt_XX.qm. qtbase_XX.qm est # autonome, contrairement aux qt_XX.qm de Qt qui dependent de tous les modules. # Premier dossier contenant des qtbase_*.qm : celui annonce par qtpaths, puis -# la formule Homebrew separee qttranslations (non liee dans /opt/homebrew/share, -# d'ou l'absence des qtbase_*.qm dans le dossier annonce par qtpaths), puis -# les autres emplacements Homebrew possibles. +# la formule Homebrew separee qttranslations, puis les autres emplacements +# Homebrew possibles. Homebrew fait de ces dossiers des liens symboliques +# (-> Cellar/qttranslations/...) : find doit donc les suivre (-L), sinon il +# ne voit que le lien lui-meme et ne trouve aucun fichier dedans. QT_TR_DIR="" for d in "$("$QT_PREFIX/bin/qtpaths" --query QT_INSTALL_TRANSLATIONS 2>/dev/null)" \ "$(brew --prefix qttranslations 2>/dev/null)/share/qt/translations" \ @@ -323,7 +324,7 @@ for d in "$("$QT_PREFIX/bin/qtpaths" --query QT_INSTALL_TRANSLATIONS 2>/dev/null fi done LANG_DST="$BUNDLE/Contents/Resources/lang" -find "$QT_TR_DIR" -maxdepth 1 -name 'qtbase_*.qm' 2>/dev/null | while read f; do +find -L "$QT_TR_DIR" -maxdepth 1 -name 'qtbase_*.qm' 2>/dev/null | while read f; do l=$(basename "$f" .qm | sed 's/^qtbase_//') cp "$f" "$LANG_DST/qt_$l.qm" done @@ -336,7 +337,7 @@ sed 's/^qet_//' "$QM_TMP/listed" | while read l; do if [ -e "$main" ]; then alt="$main" else - alt=$(find "$QT_TR_DIR" -maxdepth 1 -name "qtbase_${l}_*.qm" 2>/dev/null | LC_ALL=C sort | head -1) + alt=$(find -L "$QT_TR_DIR" -maxdepth 1 -name "qtbase_${l}_*.qm" 2>/dev/null | LC_ALL=C sort | head -1) fi [ -n "$alt" ] && cp "$alt" "$LANG_DST/qt_$l.qm" fi From 99e9ce5acabafbae827485686895e50a7a7ef03d Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Fri, 11 Sep 2026 16:28:11 +0200 Subject: [PATCH 82/95] QETApp: fall back to English when the QET translation is empty A .qm compiled from a 0%-translated .ts (fi, no, rs, sk, sl, sr) loads successfully but contains no messages, so setLanguage() treated the language as loaded and never fell back to qet_en: users got the French source strings instead of English. Treat an empty translator as not loaded. Also log the QET and Qt .qm files actually loaded in the startup diagnostics (MachineInfo), to make translation reports easier to triage. --- sources/machine_info.cpp | 2 ++ sources/qetapp.cpp | 33 ++++++++++++++++++++++++++++++--- sources/qetapp.h | 2 ++ 3 files changed, 34 insertions(+), 3 deletions(-) diff --git a/sources/machine_info.cpp b/sources/machine_info.cpp index 905564213..ede59389b 100644 --- a/sources/machine_info.cpp +++ b/sources/machine_info.cpp @@ -159,6 +159,8 @@ void MachineInfo::send_info_to_debug() qInfo()<< ""; qInfo()<< " System language defined in QET configuration:"<< QString(QETApp::langFromSetting().toLatin1()); qInfo()<< " language Path:"<< QString(QETApp::languagesPath().toLatin1()); + qInfo()<< " Loaded QET translation:"<< QETApp::loadedQetTranslationFile(); + qInfo()<< " Loaded Qt translation:"<< QETApp::loadedQtTranslationFile(); qInfo()<< " Common Elements Dir:"<< QString(QETApp::commonElementsDir().toLatin1()); qInfo()<< " Common TitleBlock Templates Dir:"<< QString(QETApp::commonTitleBlockTemplatesDir().toLatin1()); qInfo()<< " Custom Elements Dir:"<< QString(QETApp::customElementsDir().toLatin1()); diff --git a/sources/qetapp.cpp b/sources/qetapp.cpp index ef53108d7..3de743760 100644 --- a/sources/qetapp.cpp +++ b/sources/qetapp.cpp @@ -197,6 +197,26 @@ QETApp *QETApp::instance() return m_qetapp; } +/** + @brief QETApp::loadedQetTranslationFile + @return path of the QET .qm file actually loaded, empty if none + (diagnostic helper for the startup log, see MachineInfo) +*/ +QString QETApp::loadedQetTranslationFile() +{ + return m_qetapp ? m_qetapp->qetTranslator.filePath() : QString(); +} + +/** + @brief QETApp::loadedQtTranslationFile + @return path of the Qt .qm file actually loaded, empty if none + (diagnostic helper for the startup log, see MachineInfo) +*/ +QString QETApp::loadedQtTranslationFile() +{ + return m_qetapp ? m_qetapp->qtTranslator.filePath() : QString(); +} + /** @brief QETApp::setLanguage Change the language used by the application. @@ -234,14 +254,21 @@ void QETApp::setLanguage(const QString &desired_language) { // desired_language may be a full locale such as "pt_BR": try that exact // translation, then the base language ("pt"), then fall back to English. // French is the application's source language and needs no translation. + // A .qm compiled from an untranslated .ts (0% done) loads "successfully" + // but is empty: treat it as missing, so the user falls back to English + // instead of silently getting the French source strings. const QString base_language = desired_language.section('_', 0, 0); - bool loaded = qetTranslator.load("qet_" + desired_language, languages_path); + auto loadQet = [this, &languages_path](const QString &name) { + return qetTranslator.load(name, languages_path) + && !qetTranslator.isEmpty(); + }; + bool loaded = loadQet("qet_" + desired_language); if (!loaded && base_language != desired_language) - loaded = qetTranslator.load("qet_" + base_language, languages_path); + loaded = loadQet("qet_" + base_language); if (!loaded && base_language != "fr") { // use of the English version by default // utilisation de la version anglaise par defaut - if(!qetTranslator.load("qet_en", languages_path)) + if(!loadQet("qet_en")) qWarning() << "failed to load" << "qet_en" << languages_path << "(" << __FILE__ << __LINE__ << __FUNCTION__ << ")"; diff --git a/sources/qetapp.h b/sources/qetapp.h index bc06ff550..ee793ecb6 100644 --- a/sources/qetapp.h +++ b/sources/qetapp.h @@ -102,6 +102,8 @@ class QETApp : public QObject static QString documentDir(); static QString pictureDir(); static QString languagesPath(); + static QString loadedQetTranslationFile(); + static QString loadedQtTranslationFile(); static QString realPath(const QString &); static QString symbolicPath(const QString &); static QStringList handledFileExtensions(); From 73f7ea8f50adec653c69b480e156ab9fd387a853 Mon Sep 17 00:00:00 2001 From: enesgursoy6110 Date: Wed, 9 Sep 2026 22:30:26 +0300 Subject: [PATCH 83/95] Add smart device metadata to element information --- cmake/qet_compilation_vars.cmake | 2 + sources/dataBase/projectdatabase.cpp | 5 ++ sources/properties/deviceinformation.cpp | 65 ++++++++++++++++++++++++ sources/properties/deviceinformation.h | 47 +++++++++++++++++ sources/qetinformation.cpp | 17 ++++++- sources/qetinformation.h | 5 ++ 6 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 sources/properties/deviceinformation.cpp create mode 100644 sources/properties/deviceinformation.h diff --git a/cmake/qet_compilation_vars.cmake b/cmake/qet_compilation_vars.cmake index 803aa6dee..e3aad8da9 100644 --- a/cmake/qet_compilation_vars.cmake +++ b/cmake/qet_compilation_vars.cmake @@ -475,6 +475,8 @@ set(QET_SRC_FILES ${QET_DIR}/sources/project/projectusagetracker.cpp ${QET_DIR}/sources/project/projectusagetracker.h + ${QET_DIR}/sources/properties/deviceinformation.cpp + ${QET_DIR}/sources/properties/deviceinformation.h ${QET_DIR}/sources/properties/elementdata.cpp ${QET_DIR}/sources/properties/elementdata.h ${QET_DIR}/sources/properties/propertiesinterface.cpp diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index 08286b6ba..bc3711737 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -600,6 +600,11 @@ void projectDataBase::createElementNomenclatureView() "ei.designation AS designation," "ei.manufacturer AS manufacturer," "ei.manufacturer_reference AS manufacturer_reference," + "ei.model AS model," + "ei.category AS category," + "ei.voltage_rating AS voltage_rating," + "ei.current_rating AS current_rating," + "ei.notes AS notes," "ei.machine_manufacturer_reference AS machine_manufacturer_reference," "ei.supplier AS supplier," "ei.quantity AS quantity," diff --git a/sources/properties/deviceinformation.cpp b/sources/properties/deviceinformation.cpp new file mode 100644 index 000000000..80010087a --- /dev/null +++ b/sources/properties/deviceinformation.cpp @@ -0,0 +1,65 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#include "deviceinformation.h" + +#include "../qetinformation.h" + +namespace { +struct DeviceField +{ + QString m_key; + QString DeviceInformation::*m_member; +}; + +const DeviceField fields[] = { + {QETInformation::ELMT_LABEL, &DeviceInformation::m_device_tag}, + {QETInformation::ELMT_MANUFACTURER, &DeviceInformation::m_manufacturer}, + {QETInformation::ELMT_MANUFACTURER_REF, &DeviceInformation::m_part_number}, + {QETInformation::ELMT_MODEL, &DeviceInformation::m_model}, + {QETInformation::ELMT_DESCRIPTION, &DeviceInformation::m_description}, + {QETInformation::ELMT_CATEGORY, &DeviceInformation::m_category}, + {QETInformation::ELMT_QUANTITY, &DeviceInformation::m_quantity}, + {QETInformation::ELMT_VOLTAGE_RATING, &DeviceInformation::m_voltage_rating}, + {QETInformation::ELMT_CURRENT_RATING, &DeviceInformation::m_current_rating}, + {QETInformation::ELMT_NOTES, &DeviceInformation::m_notes} +}; +} + +DeviceInformation DeviceInformation::fromContext(const DiagramContext &context) +{ + DeviceInformation info; + for (const auto &field : fields) { + info.*(field.m_member) = context.value(field.m_key).toString(); + } + return info; +} + +DiagramContext DeviceInformation::toContext(DiagramContext context) const +{ + for (const auto &field : fields) + { + const auto &value = this->*(field.m_member); + if (value.isEmpty()) { + context.remove(field.m_key); + } else { + const bool show = !context.contains(field.m_key) || context.keyMustShow(field.m_key); + context.addValue(field.m_key, value, show); + } + } + return context; +} diff --git a/sources/properties/deviceinformation.h b/sources/properties/deviceinformation.h new file mode 100644 index 000000000..6e355bb9b --- /dev/null +++ b/sources/properties/deviceinformation.h @@ -0,0 +1,47 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#ifndef DEVICEINFORMATION_H +#define DEVICEINFORMATION_H + +#include "../diagramcontext.h" + +#include + +/** + * Device properties backed by ElementData::m_informations, not a second store. + * Missing properties remain empty. Quantity and ratings retain the existing + * free-text representation (including decimal quantities and units). + */ +struct DeviceInformation +{ + QString m_device_tag; + QString m_manufacturer; + QString m_part_number; + QString m_model; + QString m_description; + QString m_category; + QString m_quantity; + QString m_voltage_rating; + QString m_current_rating; + QString m_notes; + + static DeviceInformation fromContext(const DiagramContext &context); + DiagramContext toContext(DiagramContext context = DiagramContext()) const; +}; + +#endif // DEVICEINFORMATION_H diff --git a/sources/qetinformation.cpp b/sources/qetinformation.cpp index 05a246d47..8da329bbf 100644 --- a/sources/qetinformation.cpp +++ b/sources/qetinformation.cpp @@ -150,6 +150,11 @@ QStringList QETInformation::elementInfoKeys() ELMT_DESIGNATION, ELMT_MANUFACTURER, ELMT_MANUFACTURER_REF, + ELMT_MODEL, + ELMT_CATEGORY, + ELMT_VOLTAGE_RATING, + ELMT_CURRENT_RATING, + ELMT_NOTES, ELMT_MACHINE_MANUFACTURER_REF, ELMT_SUPPLIER, ELMT_QUANTITY, @@ -234,7 +239,12 @@ QString QETInformation::infoToVar(const QString &info) */ QString QETInformation::translatedInfoKey(const QString &info) { - if (info == DIA_AUTHOR) return QObject::tr("Auteur"); + if (info == ELMT_MODEL) return QObject::tr("Modèle"); + else if (info == ELMT_CATEGORY) return QObject::tr("Catégorie"); + else if (info == ELMT_VOLTAGE_RATING) return QObject::tr("Tension nominale"); + else if (info == ELMT_CURRENT_RATING) return QObject::tr("Courant nominal"); + else if (info == ELMT_NOTES) return QObject::tr("Notes"); + else if (info == DIA_AUTHOR) return QObject::tr("Auteur"); else if (info == DIA_DATE) return QObject::tr("Date"); else if (info == DIA_TITLE) return QObject::tr("Titre"); else if (info == DIA_FILENAME) return QObject::tr("Fichier"); @@ -332,6 +342,11 @@ QStringList QETInformation::elementEditorElementInfoKeys() ELMT_DESIGNATION, ELMT_MANUFACTURER, ELMT_MANUFACTURER_REF, + ELMT_MODEL, + ELMT_CATEGORY, + ELMT_VOLTAGE_RATING, + ELMT_CURRENT_RATING, + ELMT_NOTES, ELMT_MACHINE_MANUFACTURER_REF, ELMT_SUPPLIER, ELMT_QUANTITY, diff --git a/sources/qetinformation.h b/sources/qetinformation.h index 9fee0cdf3..ee144a301 100644 --- a/sources/qetinformation.h +++ b/sources/qetinformation.h @@ -44,6 +44,11 @@ namespace QETInformation static QString ELMT_MACHINE_MANUFACTURER_REF = "machine_manufacturer_reference"; static QString ELMT_SUPPLIER = "supplier"; static QString ELMT_QUANTITY = "quantity"; + static QString ELMT_MODEL = "model"; + static QString ELMT_CATEGORY = "category"; + static QString ELMT_VOLTAGE_RATING = "voltage_rating"; + static QString ELMT_CURRENT_RATING = "current_rating"; + static QString ELMT_NOTES = "notes"; static QString ELMT_UNITY = "unity"; static QString ELMT_PLANT = "plant"; static QString ELMT_LOCATION = "location"; From 16dbc5c4048a737fa4464b5ba366c79223c3c83b Mon Sep 17 00:00:00 2001 From: enesgursoy6110 Date: Wed, 9 Sep 2026 22:31:33 +0300 Subject: [PATCH 84/95] Add ungrouped device BOM CSV export --- cmake/qet_compilation_vars.cmake | 2 + docs/smart-device-bom.md | 136 ++++++++++ lang/qet_en.ts | 53 ++++ lang/qet_tr.ts | 53 ++++ sources/devicebomexport.cpp | 119 +++++++++ sources/devicebomexport.h | 43 ++++ sources/qetdiagrameditor.cpp | 31 +++ sources/qetdiagrameditor.h | 1 + tests/qttest/run-smart-device-tests.ps1 | 49 ++++ tests/qttest/smart_device.pro | 24 ++ tests/qttest/tst_smart_device.cpp | 325 ++++++++++++++++++++++++ 11 files changed, 836 insertions(+) create mode 100644 docs/smart-device-bom.md create mode 100644 sources/devicebomexport.cpp create mode 100644 sources/devicebomexport.h create mode 100644 tests/qttest/run-smart-device-tests.ps1 create mode 100644 tests/qttest/smart_device.pro create mode 100644 tests/qttest/tst_smart_device.cpp diff --git a/cmake/qet_compilation_vars.cmake b/cmake/qet_compilation_vars.cmake index e3aad8da9..3d44ef907 100644 --- a/cmake/qet_compilation_vars.cmake +++ b/cmake/qet_compilation_vars.cmake @@ -177,6 +177,8 @@ set(QET_SRC_FILES ${QET_DIR}/sources/ui/wiringlistdialog.h ${QET_DIR}/sources/ui/wiringlistdialog.cpp ${QET_DIR}/sources/conductornumexport.h + ${QET_DIR}/sources/devicebomexport.cpp + ${QET_DIR}/sources/devicebomexport.h ${QET_DIR}/sources/conductorprofile.cpp ${QET_DIR}/sources/conductorprofile.h ${QET_DIR}/sources/conductorproperties.cpp diff --git a/docs/smart-device-bom.md b/docs/smart-device-bom.md new file mode 100644 index 000000000..583f2ce74 --- /dev/null +++ b/docs/smart-device-bom.md @@ -0,0 +1,136 @@ +# Smart Device Information and BOM CSV + +## Architecture + +- A `.qet` project is XML, rooted at `project`. `QETProject::toXml()` and + `write()` serialize it; the file constructor, `readProjectXml()` and + `readDiagramsXml()` load it (`sources/qetproject.cpp`). Diagrams are + serialized by `Diagram::toXml()/fromXml()` (`sources/diagram.cpp`). +- `.elmt` symbol definitions are stored in collections and embedded into a + project by `XmlElementCollection`. `Element::buildFromXml()` builds their + graphical representation (`sources/qetgraphicsitem/element.cpp`). +- A placed component is an `Element`. `ElementData` holds its type and + `m_informations`, a `DiagramContext` key/value map. Instance properties are + read/written by `Element::fromXml()/toXml()` as `elementInformations` with + `elementInformation name="..."` children. +- `ElementPropertiesWidget` hosts `ElementInfoWidget`; the latter creates + rows from `QETInformation::elementInfoKeys()`. Edits use + `ChangeElementInformationCommand`, including live editing and undo/redo. +- Existing reporting uses the derived SQLite `projectDataBase`, + `element_nomenclature_view`, `ElementQueryWidget`, `BOMExportDialog` and + `QetGraphicsTableFactory`. `cli_export.cpp` also provides `--export-bom`. + The database is not the authoritative project storage. + +## Device Properties + +`sources/properties/deviceinformation.h/.cpp` provide a small value type +and mapping to the existing context. There is no parallel device store. +`toContext(existing_context)` preserves unrelated properties and visibility +flags. Callers changing a placed element should use +`ChangeElementInformationCommand` to retain undo/redo and dirty tracking. + +| Device field | XML/context key or source | Origin | CSV BOM | +| --- | --- | --- | --- | +| Device tag | `label` | Existing; BOM resolves formula labels | Yes | +| Manufacturer | `manufacturer` | Existing | Yes | +| Part number | `manufacturer_reference` | Existing | Yes | +| Model | `model` | New | Yes | +| Description | `description` | Existing | Yes | +| Category | `category` | New | Yes | +| Quantity | `quantity` | Existing | Yes | +| Page | Resolved diagram folio | Derived | Yes | +| Voltage rating | `voltage_rating` | New | No; stored metadata | +| Current rating | `current_rating` | New | No; stored metadata | +| Notes | `notes` | New | Yes | + +No XML version bump or migration is needed. Absent properties remain empty; +empty properties are omitted by the existing XML writer. Older keys keep +their original meaning. Generic context loading preserves unknown keys. +As before, serialization trims leading/trailing whitespace. Compatibility +with every historical QET release is not implied. + +Quantity remains text, as in existing QET properties, so decimal quantities +and existing unit conventions are not silently changed. A missing quantity +stays empty in the BOM: it is not silently assumed to be one. Ratings are +text (for example `24 V DC` and `16 A`). No numeric aggregation is performed. + +The five new rows are automatically available in the existing information +tab for normal/master symbols and in the symbol definition editor. No new +panel is required. Notes use the existing single-line property editor; +programmatically loaded multiline values are supported by XML and CSV. +New keys are also exposed in the existing SQL nomenclature view. + +## BOM Policy + +`sources/devicebomexport.h/.cpp` collect current in-memory project data, +including unsaved property changes, without a SQL cache dependency. + +- One row per Simple or Master element. +- Slave symbols, terminals, page reports, thumbnails and conductor definitions + are excluded; a master is counted once, not once per contact representation. + Even unlinked slave symbols are excluded, matching this device-level policy. +- The existing `exclude_from_bom` property is respected. +- Empty tags and part numbers do not discard otherwise eligible elements. +- Rows follow project page order, then device tag, then UUID for stable ties. + `Page` is the resolved folio label shown by QET; an empty label falls back + to the one-based project page position. +- Identical part numbers remain separate rows. Grouping is deferred because + conflicting manufacturers, ratings, tags and quantities need explicit rules. +- Auxiliary accessories are not expanded into extra rows in this MVP. +- A PLC master can be listed as one physical Master device, but its embedded + PLC I/O entries are never expanded into BOM rows. + +The Project menu action **Export BOM as CSV** exports fixed columns: +`No, Device tag, Manufacturer, Part number, Model, Description, Category, +Quantity, Page, Notes`. The legacy configurable export and CLI export retain +their previous behavior. Voltage and current ratings deliberately remain +device metadata in this MVP because they were not part of the requested BOM +schema; they can be added later without changing the stored project data. + +CSV is UTF-8 with a BOM, comma-delimited, CRLF record endings, double-quoted +fields and doubled embedded quotes. Embedded newlines are retained. Values +are exported verbatim so device tags and part numbers are not altered. CSV +quoting does not disable spreadsheet formulas: only export trusted projects, +or import all columns as **text** when inspecting untrusted project data. Text +import also preserves leading zeros. +`QSaveFile` commits atomically; open, write and commit errors are reported. +Cancel does not write a file. Read-only projects can still be exported. + +## Verification + +On the configured Windows/MSYS2 Qt5 system, from the repository root: + +```powershell +.\tests\qttest\run-smart-device-tests.ps1 +``` + +The runner builds the application with `debug` and `no_kf5`, then links a QtTest +executable against the real application objects. Use `-SkipApplicationBuild` +only after building the current application sources. Results and generated +sample `.qet`, CSV and properties screenshot are under +`build-debug/smart-device-tests/`. CMake's explicit source list includes the +new files; qmake discovers them through its existing globs. + +Tests cover absent/legacy properties, context/XML round trips, custom-key +preservation, project save/reopen, BOM filtering and ordering, duplicate part +numbers, CSV encoding/escaping, write success/failure, properties UI undo/redo, +and the existing database report view. + +Manual checks: + +1. Open an existing project and edit a normal or master element's information + tab. Existing fields and the new Model/Category/ratings/Notes rows must show. +2. Enter manufacturer, part number, quantity and new properties. Apply, undo, + redo, save, close and reopen. Verify the same values are present. +3. Give two elements the same part number on different pages. Export through + Project > Export BOM as CSV. Expect separate rows with their own tags/pages. +4. Enable the existing exclusion checkbox for one element and export again. + Its row must be absent; changing a property without saving must affect CSV. +5. Open CSV with a UTF-8 CSV reader (import text columns when using Excel). + Check Turkish characters, leading-zero part numbers, commas and quotes. +6. Cancel export and try a non-writable destination. Cancellation must not + create a file; failure must show an error without destroying an existing CSV. + +Suggested review pieces: (1) device mapping and property/report registration, +(2) collector and CSV menu action, (3) tests and documentation. No cable, +PLC I/O, catalog integration or cabinet-layout feature is added. diff --git a/lang/qet_en.ts b/lang/qet_en.ts index bcf971599..c8776c3f0 100644 --- a/lang/qet_en.ts +++ b/lang/qet_en.ts @@ -7568,6 +7568,34 @@ Available options: Exporter au format CSV Export to CSV + + + + Exporter la nomenclature des appareils au format CSV + Export device BOM as CSV + + + + Fichiers CSV (*.csv) + CSV files (*.csv) + + + + Exporter la nomenclature + Export BOM + + + + Impossible d'enregistrer la nomenclature dans %1. +%2 + Could not save the BOM to %1. +%2 + + + + Nomenclature exportée dans %1 + BOM exported to %1 + Gestionnaire de borniers (DEV) @@ -10967,6 +10995,31 @@ Do you want to replace it ? Description textuelle Textual description + + + Modèle + Model + + + + Catégorie + Category + + + + Tension nominale + Voltage rating + + + + Courant nominal + Current rating + + + + Notes + Notes + Numéro d'article diff --git a/lang/qet_tr.ts b/lang/qet_tr.ts index ec58ef57e..69f34dc90 100644 --- a/lang/qet_tr.ts +++ b/lang/qet_tr.ts @@ -7685,6 +7685,34 @@ Mevcut seçenekler: Exporter au format CSV CSV formatında export et + + + + Exporter la nomenclature des appareils au format CSV + Cihaz malzeme listesini CSV olarak dışa aktar + + + + Fichiers CSV (*.csv) + CSV dosyaları (*.csv) + + + + Exporter la nomenclature + Malzeme listesini dışa aktar + + + + Impossible d'enregistrer la nomenclature dans %1. +%2 + Malzeme listesi %1 konumuna kaydedilemedi. +%2 + + + + Nomenclature exportée dans %1 + Malzeme listesi %1 konumuna aktarıldı + Gestionnaire de borniers (DEV) @@ -10967,6 +10995,31 @@ Değiştirmek ister misiniz? Description textuelle Metin açıklaması + + + Modèle + Model + + + + Catégorie + Kategori + + + + Tension nominale + Anma gerilimi + + + + Courant nominal + Anma akımı + + + + Notes + Notlar + Numéro d'article diff --git a/sources/devicebomexport.cpp b/sources/devicebomexport.cpp new file mode 100644 index 000000000..485d341c5 --- /dev/null +++ b/sources/devicebomexport.cpp @@ -0,0 +1,119 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#include "devicebomexport.h" + +#include "diagram.h" +#include "qetgraphicsitem/element.h" +#include "qetproject.h" + +#include +#include +#include + +namespace { +QByteArray csvRecord(const QStringList &values) +{ + QStringList escaped; + for (QString value : values) { + value.replace(QLatin1Char('"'), QStringLiteral("\"\"")); + escaped.append(QLatin1Char('"') + value + QLatin1Char('"')); + } + return (escaped.join(QLatin1Char(',')) + QStringLiteral("\r\n")).toUtf8(); +} +} + +QList DeviceBomExport::collect(const QETProject &project) +{ + QList rows; + int page = 0; + for (Diagram *diagram : project.diagrams()) + { + const QString page_position = QString::number(++page); + const QString page_label = diagram->border_and_titleblock.finalfolio().isEmpty() + ? page_position + : diagram->border_and_titleblock.finalfolio(); + auto elements = diagram->elements(); + // Scene stacking order is not stable across save/load. UUID breaks tag ties. + std::sort(elements.begin(), elements.end(), [](Element *a, Element *b) { + const int compare = QString::compare(a->actualLabel(), b->actualLabel()); + return compare ? compare < 0 : a->uuid().toString() < b->uuid().toString(); + }); + for (Element *element : elements) + { + const auto type = element->elementData().m_type; + // Slaves are representations of a master, not additional devices. + // Terminal-specific inventory remains outside this MVP. + if (type != ElementData::Simple && type != ElementData::Master) { + continue; + } + const auto context = element->elementInformations(); + if (context.value(QStringLiteral("exclude_from_bom")).toBool()) { + continue; + } + auto device = DeviceInformation::fromContext(context); + device.m_device_tag = element->actualLabel(); + rows.append({device, page_label}); + } + } + return rows; +} + +QByteArray DeviceBomExport::toCsv(const QList &rows) +{ + // UTF-8 BOM lets desktop spreadsheet applications detect Turkish text too. + QByteArray csv("\xEF\xBB\xBF"); + csv += csvRecord({QStringLiteral("No"), QStringLiteral("Device tag"), + QStringLiteral("Manufacturer"), QStringLiteral("Part number"), + QStringLiteral("Model"), QStringLiteral("Description"), + QStringLiteral("Category"), QStringLiteral("Quantity"), + QStringLiteral("Page"), QStringLiteral("Notes")}); + int number = 0; + for (const auto &row : rows) + { + const auto &device = row.m_device; + csv += csvRecord({QString::number(++number), device.m_device_tag, + device.m_manufacturer, device.m_part_number, device.m_model, + device.m_description, device.m_category, device.m_quantity, + row.m_page, device.m_notes}); + } + return csv; +} + +bool DeviceBomExport::writeCsv(const QETProject &project, const QString &file_path, + QString *error) +{ + if (error) { + error->clear(); + } + QSaveFile file(file_path); + if (!file.open(QIODevice::WriteOnly)) { + if (error) *error = file.errorString(); + return false; + } + const auto csv = toCsv(collect(project)); + if (file.write(csv) != csv.size()) { + if (error) *error = file.errorString(); + file.cancelWriting(); + return false; + } + if (!file.commit()) { + if (error) *error = file.errorString(); + return false; + } + return true; +} diff --git a/sources/devicebomexport.h b/sources/devicebomexport.h new file mode 100644 index 000000000..1fe0332d0 --- /dev/null +++ b/sources/devicebomexport.h @@ -0,0 +1,43 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#ifndef DEVICEBOMEXPORT_H +#define DEVICEBOMEXPORT_H + +#include "properties/deviceinformation.h" + +#include +#include +#include + +class QETProject; + +class DeviceBomExport +{ + public: + struct Row { + DeviceInformation m_device; + QString m_page; + }; + + static QList collect(const QETProject &project); + static QByteArray toCsv(const QList &rows); + static bool writeCsv(const QETProject &project, const QString &file_path, + QString *error = nullptr); +}; + +#endif // DEVICEBOMEXPORT_H diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp index 724fde835..d04f102d3 100644 --- a/sources/qetdiagrameditor.cpp +++ b/sources/qetdiagrameditor.cpp @@ -21,6 +21,7 @@ #include "QWidgetAnimation/qwidgetanimation.h" #include "autoNum/ui/autonumberingdockwidget.h" #include "conductornumexport.h" +#include "devicebomexport.h" #include "diagramcommands.h" #include "diagramevent/diagrameventaddimage.h" #ifdef QET_HAS_QTPDF @@ -470,6 +471,34 @@ void QETDiagramEditor::setUpActions() bom.exec(); }); + m_device_bom_export = new QAction(QET::Icons::DocumentSpreadsheet, + tr("Exporter la nomenclature des appareils au format CSV"), this); + m_device_bom_export->setObjectName(QStringLiteral("export_device_bom_csv")); + connect(m_device_bom_export, &QAction::triggered, this, [this]() { + auto *view = currentProjectView(); + if (!view) return; + QPointer project = view->project(); + QString dir = project->currentDir(); + if (dir.isEmpty()) dir = QETApp::documentDir(); + QFileDialog dialog( + this, + tr("Exporter la nomenclature des appareils au format CSV"), + QDir(dir).filePath(QStringLiteral("bom.csv")), + tr("Fichiers CSV (*.csv)")); + dialog.setAcceptMode(QFileDialog::AcceptSave); + dialog.setDefaultSuffix(QStringLiteral("csv")); + if (dialog.exec() != QDialog::Accepted || !project) return; + const QString path = dialog.selectedFiles().value(0); + if (path.isEmpty()) return; + QString error; + if (!DeviceBomExport::writeCsv(*project, path, &error)) { + QMessageBox::critical(this, tr("Exporter la nomenclature"), + tr("Impossible d'enregistrer la nomenclature dans %1.\n%2").arg(path, error)); + } else { + statusBar()->showMessage(tr("Nomenclature exportée dans %1").arg(path), 5000); + } + }); + //Add a nomenclature item m_add_nomenclature = new QAction(QET::Icons::TableOfContent, tr("Ajouter une nomenclature"), this); connect(m_add_nomenclature, &QAction::triggered, this, [=]() { @@ -948,6 +977,7 @@ void QETDiagramEditor::setUpMenu() menu_project -> addAction(m_add_summary); menu_project -> addAction(m_add_nomenclature); menu_project -> addAction(m_csv_export); + menu_project -> addAction(m_device_bom_export); menu_project -> addAction(m_project_export_conductor_num); menu_project -> addAction(m_terminal_strip_dialog); menu_project -> addAction(m_project_terminalBloc); @@ -1799,6 +1829,7 @@ void QETDiagramEditor::slot_updateActions() m_add_summary -> setEnabled(editable_project); m_add_nomenclature -> setEnabled(editable_project); m_csv_export -> setEnabled(editable_project); + m_device_bom_export -> setEnabled(opened_project); m_project_export_conductor_num-> setEnabled(opened_project); m_terminal_strip_dialog -> setEnabled(editable_project); m_project_export_wiring_list -> setEnabled(opened_project); diff --git a/sources/qetdiagrameditor.h b/sources/qetdiagrameditor.h index ed07a2395..313d5e803 100644 --- a/sources/qetdiagrameditor.h +++ b/sources/qetdiagrameditor.h @@ -203,6 +203,7 @@ class QETDiagramEditor : public QETMainWindow *m_remove_diagram_from_project, ///< Delete a diagram from the current project *m_clean_project, ///< Clean the content of the current project by removing useless items *m_csv_export, ///< generate nomenclature + *m_device_bom_export, ///< Export an ungrouped device BOM *m_add_nomenclature, ///< Add nomenclature graphics item; *m_add_summary, ///. +*/ +#include +#include +#include +#include +#include + +#include "ElementsCollection/xmlelementcollection.h" +#include "dataBase/projectdatabase.h" +#include "devicebomexport.h" +#include "diagram.h" +#include "qetgraphicsitem/element.h" +#include "qetinformation.h" +#include "qetproject.h" +#include "qetresult.h" +#include "ui/elementinfopartwidget.h" +#include "ui/elementinfowidget.h" + +class SmartDeviceTest : public QObject +{ + Q_OBJECT + QTemporaryDir m_settings; + + Element *addElement(QETProject &project, Diagram *diagram, const QString &tag, + ElementData::Type type = ElementData::Simple) + { + QDomDocument doc; + doc.setContent(QStringLiteral( + "" + "Test device" + "")); + const QString name = QUuid::createUuid().toString(QUuid::WithoutBraces) + ".elmt"; + if (!project.embeddedElementCollection()->addElementDefinition("import", name, doc.documentElement())) + return nullptr; + int state = -1; + auto *element = new Element(ElementsLocation("embed://import/" + name, &project), nullptr, &state); + if (state != 0) { + delete element; + return nullptr; + } + diagram->addItem(element); + auto data = element->elementData(); + data.m_type = type; + data.m_informations.addValue("label", tag); + element->setElementData(data); + return element; + } + + DeviceInformation sample() const + { + DeviceInformation info; + info.m_device_tag = "-K1"; + info.m_manufacturer = QString::fromUtf8("\xC3\x96rnek Elektrik"); + info.m_part_number = "001234"; + info.m_model = "RX-24"; + info.m_description = QString::fromUtf8("G\xC3\xBC\xC3\xA7 kontakt\xC3\xB6r\xC3\xBC"); + info.m_category = "Contactor"; + info.m_quantity = "2.5"; + info.m_voltage_rating = "24 V DC"; + info.m_current_rating = "16 A"; + info.m_notes = "Panel A, \"spare\"; check\nSecond line"; + return info; + } + +private slots: + void initTestCase() + { + QCoreApplication::setOrganizationName("QET-SmartDeviceTests"); + QCoreApplication::setApplicationName("IsolatedTests"); + QSettings::setDefaultFormat(QSettings::IniFormat); + QSettings::setPath(QSettings::IniFormat, QSettings::UserScope, m_settings.path()); + QSettings::setPath(QSettings::IniFormat, QSettings::SystemScope, m_settings.path()); + QETProject::setBackupEnabled(false); + } + + void emptyAndLegacyContext() + { + const auto empty = DeviceInformation::fromContext(DiagramContext()); + QVERIFY(empty.toContext().keys().isEmpty()); + QVERIFY(empty.m_quantity.isEmpty()); + QDomDocument doc; + QVERIFY(doc.setContent(QStringLiteral( + "K7" + "0007" + ""))); + DiagramContext context; + context.fromXml(doc.documentElement(), "elementInformation"); + const auto legacy = DeviceInformation::fromContext(context); + QCOMPARE(legacy.m_device_tag, QString("K7")); + QCOMPARE(legacy.m_part_number, QString("0007")); + QVERIFY(legacy.m_model.isEmpty()); + QVERIFY(legacy.m_voltage_rating.isEmpty()); + QVERIFY(legacy.m_current_rating.isEmpty()); + QVERIFY(legacy.m_notes.isEmpty()); + } + + void contextRoundTripAndMerge() + { + DiagramContext original; + original.addValue("custom_value", "Keep", false); + original.addValue("manufacturer", "Old", false); + original.addValue("exclude_from_bom", "true"); + auto info = sample(); + auto context = info.toContext(original); + QVERIFY(!context.keyMustShow("manufacturer")); + QVERIFY(!context.keyMustShow("custom_value")); + QCOMPARE(context.value("custom_value").toString(), QString("Keep")); + QDomDocument doc; + auto xml = doc.createElement("elementInformations"); + doc.appendChild(xml); + context.toXml(xml, "elementInformation"); + QDomDocument reparsed; + QVERIFY(reparsed.setContent(doc.toByteArray())); + DiagramContext restored; + restored.fromXml(reparsed.documentElement(), "elementInformation"); + QVERIFY(restored == context); + QVERIFY(DeviceInformation::fromContext(restored).toContext() == info.toContext()); + info.m_model.clear(); + const auto cleared = info.toContext(restored); + QVERIFY(!cleared.contains("model")); + QCOMPARE(cleared.value("exclude_from_bom").toString(), QString("true")); + } + + void projectSaveLoad() + { + QTemporaryDir temp; + QETProject project; + auto *diagram = project.addNewDiagram(); + diagram->border_and_titleblock.setFolio("A-01"); + auto *element = addElement(project, diagram, "-K1"); + QVERIFY(element); + element->setElementInformations(sample().toContext()); + auto *second_diagram = project.addNewDiagram(); + second_diagram->border_and_titleblock.setFolio("A-02"); + diagram->border_and_titleblock.setFolioData(1, 2); + second_diagram->border_and_titleblock.setFolioData(2, 2); + auto *legacy = addElement(project, second_diagram, "-K2"); + QVERIFY(legacy); + const auto before = DeviceBomExport::toCsv(DeviceBomExport::collect(project)); + project.setFilePath(temp.filePath("roundtrip.qet")); + const auto result = project.write(); + QVERIFY2(result.isOk(), qPrintable(result.errorMessage())); + QETProject restored(project.filePath()); + QCOMPARE(restored.state(), QETProject::Ok); + QCOMPARE(restored.diagrams().size(), 2); + const auto rows = DeviceBomExport::collect(restored); + QCOMPARE(rows.size(), 2); + QCOMPARE(rows.first().m_page, QString("A-01")); + QCOMPARE(rows.last().m_page, QString("A-02")); + QVERIFY(rows.first().m_device.toContext() == sample().toContext()); + QVERIFY(rows.last().m_device.m_model.isEmpty()); + QVERIFY(rows.last().m_device.m_quantity.isEmpty()); + QCOMPARE(DeviceBomExport::toCsv(rows), before); + + const QString artifacts = qEnvironmentVariable("QET_SMART_DEVICE_ARTIFACT_DIR"); + if (!artifacts.isEmpty()) { + QDir().mkpath(artifacts); + restored.setFilePath(QDir(artifacts).filePath("sample.qet")); + QVERIFY(restored.write().isOk()); + QVERIFY(DeviceBomExport::writeCsv(restored, QDir(artifacts).filePath("sample.csv"))); + } + } + + void collectDevices() + { + QETProject project; + auto *first = project.addNewDiagram(); + auto *second = project.addNewDiagram(); + first->border_and_titleblock.setFolio("DEV-01"); + second->border_and_titleblock.setFolio("DEV-10"); + first->border_and_titleblock.setFolioData(1, 2); + second->border_and_titleblock.setFolioData(2, 2); + for (auto type : {ElementData::Simple, ElementData::Master, ElementData::Terminal, + ElementData::Slave, ElementData::NextReport, ElementData::PreviousReport, + ElementData::Thumbnail, ElementData::ConductorDefinition}) { + auto *element = addElement(project, first, QString::number(type), type); + QVERIFY(element); + if (type == ElementData::Master) { + auto data = element->elementData(); + data.m_master_type = ElementData::PLC; + data.m_plc_master_data.ios.resize(2); + element->setElementData(data); + } + } + auto *excluded = addElement(project, first, "Excluded"); + QVERIFY(excluded); + auto context = excluded->elementInformations(); + context.addValue("exclude_from_bom", "true"); + excluded->setElementInformations(context); + for (const QString tag : {"Z2", "A2"}) { + auto *element = addElement(project, second, tag); + QVERIFY(element); + auto info = sample(); + info.m_device_tag = tag; + element->setElementInformations(info.toContext()); + } + const auto rows = DeviceBomExport::collect(project); + QCOMPARE(rows.size(), 4); + QCOMPARE(rows.at(0).m_page, QString("DEV-01")); + QCOMPARE(rows.at(0).m_device.m_device_tag, QString("1")); + QCOMPARE(rows.at(1).m_device.m_device_tag, QString("8")); + QCOMPARE(rows.at(2).m_page, QString("DEV-10")); + QCOMPARE(rows.at(2).m_device.m_device_tag, QString("A2")); + QCOMPARE(rows.at(3).m_device.m_device_tag, QString("Z2")); + QCOMPARE(rows.at(2).m_device.m_part_number, rows.at(3).m_device.m_part_number); + QCOMPARE(rows.at(2).m_device.m_quantity, QString("2.5")); + QCOMPARE(DeviceBomExport::toCsv(rows), DeviceBomExport::toCsv(DeviceBomExport::collect(project))); + } + + void emptyFolioFallsBackToPagePosition() + { + QETProject project; + auto *diagram = project.addNewDiagram(); + diagram->border_and_titleblock.setFolio(QString()); + diagram->border_and_titleblock.setFolioData(1, 1); + QVERIFY(addElement(project, diagram, "K1")); + const auto rows = DeviceBomExport::collect(project); + QCOMPARE(rows.size(), 1); + QCOMPARE(rows.first().m_page, QString("1")); + } + + void csvEscapingAndEncoding() + { + const auto csv = DeviceBomExport::toCsv({{sample(), "F-03"}}); + const QByteArray header("\xEF\xBB\xBF\"No\",\"Device tag\",\"Manufacturer\",\"Part number\"," + "\"Model\",\"Description\",\"Category\",\"Quantity\",\"Page\",\"Notes\"\r\n"); + QVERIFY(csv.startsWith(header)); + QVERIFY(csv.contains(sample().m_manufacturer.toUtf8())); + QVERIFY(csv.contains("\"001234\"")); + QVERIFY(!csv.contains("24 V DC")); + QVERIFY(!csv.contains("16 A")); + QVERIFY(csv.endsWith("\"2.5\",\"F-03\",\"Panel A, \"\"spare\"\"; check\nSecond line\"\r\n")); + QCOMPARE(DeviceBomExport::toCsv({}), header); + } + + void fileSuccessAndFailure() + { + QTemporaryDir temp; + QETProject project; + QString error = "old error"; + QVERIFY(!DeviceBomExport::writeCsv(project, temp.filePath("absent/bom.csv"), &error)); + QVERIFY(!error.isEmpty()); + const auto path = temp.filePath("bom.csv"); + QVERIFY(DeviceBomExport::writeCsv(project, path, &error)); + QVERIFY(error.isEmpty()); + QVERIFY(DeviceBomExport::writeCsv(project, path, &error)); + QFile file(path); + QVERIFY(file.open(QIODevice::ReadOnly)); + QCOMPARE(file.readAll(), DeviceBomExport::toCsv({})); + } + + void propertyEditorUndoRedo() + { + QETProject project; + auto *diagram = project.addNewDiagram(); + auto *element = addElement(project, diagram, "-K1"); + QVERIFY(element); + ElementInfoWidget editor(element); + const auto context = sample().toContext(); + const auto widgets = editor.findChildren(); + for (const QString &key : context.keys()) { + auto it = std::find_if(widgets.begin(), widgets.end(), [&key](ElementInfoPartWidget *widget) { + return widget->key() == key; + }); + QVERIFY2(it != widgets.end(), qPrintable(key)); + (*it)->setText(context.value(key).toString().replace('\n', ' ')); + } + const int undo_count = diagram->undoStack().count(); + editor.apply(); + QCOMPARE(element->elementInformations().value("model").toString(), QString("RX-24")); + QCOMPARE(diagram->undoStack().count(), undo_count + 1); + diagram->undoStack().undo(); + QVERIFY(element->elementInformations().value("model").toString().isEmpty()); + diagram->undoStack().redo(); + QCOMPARE(element->elementInformations().value("voltage_rating").toString(), QString("24 V DC")); + QCOMPARE(DeviceBomExport::collect(project).first().m_device.m_model, QString("RX-24")); + editor.resize(600, 750); + editor.show(); + QCoreApplication::processEvents(); + const QString artifacts = qEnvironmentVariable("QET_SMART_DEVICE_ARTIFACT_DIR"); + if (!artifacts.isEmpty()) { + QVERIFY(editor.grab().save(QDir(artifacts).filePath("properties.png"))); + } + } + + void existingDatabaseReports() + { + QETProject project; + auto *element = addElement(project, project.addNewDiagram(), "-K1"); + QVERIFY(element); + element->setElementInformations(sample().toContext()); + project.dataBase()->updateDB(); + auto query = project.dataBase()->newQuery(QStringLiteral( + "SELECT model,category,voltage_rating,current_rating,notes FROM element_nomenclature_view")); + QVERIFY2(query.exec(), qPrintable(query.lastError().text())); + QVERIFY(query.next()); + QCOMPARE(query.value(0).toString(), sample().m_model); + QCOMPARE(query.value(1).toString(), sample().m_category); + QCOMPARE(query.value(2).toString(), sample().m_voltage_rating); + QCOMPARE(query.value(3).toString(), sample().m_current_rating); + QCOMPARE(query.value(4).toString(), sample().m_notes); + } +}; + +QTEST_MAIN(SmartDeviceTest) +#include "tst_smart_device.moc" From 77f8e26ffc635ac3552c39a4f8ef107f3483fc70 Mon Sep 17 00:00:00 2001 From: enesgursoy6110 Date: Thu, 10 Sep 2026 20:02:42 +0300 Subject: [PATCH 85/95] Address smart device BOM review feedback --- CMakeLists.txt | 1 + cmake/qet_compilation_vars.cmake | 4 +- docs/smart-device-bom.md | 179 ++++----- lang/qet_en.ts | 53 --- lang/qet_tr.ts | 53 --- sources/bomexport.cpp | 113 ++++++ sources/{devicebomexport.h => bomexport.h} | 32 +- sources/cli_export.cpp | 62 ++-- sources/dataBase/projectdatabase.cpp | 3 +- sources/dataBase/ui/elementquerywidget.cpp | 30 +- sources/devicebomexport.cpp | 119 ------ sources/qetdiagrameditor.cpp | 31 -- sources/qetdiagrameditor.h | 1 - sources/ui/bomexportdialog.cpp | 101 ++--- sources/ui/bomexportdialog.h | 3 +- sources/ui/bomexportdialog.ui | 2 +- tests/qttest/CMakeLists.txt | 9 + tests/qttest/run-smart-device-tests.ps1 | 49 --- tests/qttest/smart_device.pro | 24 -- tests/qttest/tst_smart_device.cpp | 408 ++++++--------------- 20 files changed, 397 insertions(+), 880 deletions(-) create mode 100644 sources/bomexport.cpp rename sources/{devicebomexport.h => bomexport.h} (61%) delete mode 100644 sources/devicebomexport.cpp delete mode 100644 tests/qttest/run-smart-device-tests.ps1 delete mode 100644 tests/qttest/smart_device.pro diff --git a/CMakeLists.txt b/CMakeLists.txt index c231dfdcb..6440cc257 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -134,6 +134,7 @@ include(cmake/fetch_kdeaddons.cmake) option(PACKAGE_TESTS "Build the tests" ON) if(PACKAGE_TESTS) message("Add sub directory tests") + enable_testing() add_subdirectory(tests) endif() diff --git a/cmake/qet_compilation_vars.cmake b/cmake/qet_compilation_vars.cmake index 3d44ef907..3fdb11e08 100644 --- a/cmake/qet_compilation_vars.cmake +++ b/cmake/qet_compilation_vars.cmake @@ -177,8 +177,8 @@ set(QET_SRC_FILES ${QET_DIR}/sources/ui/wiringlistdialog.h ${QET_DIR}/sources/ui/wiringlistdialog.cpp ${QET_DIR}/sources/conductornumexport.h - ${QET_DIR}/sources/devicebomexport.cpp - ${QET_DIR}/sources/devicebomexport.h + ${QET_DIR}/sources/bomexport.cpp + ${QET_DIR}/sources/bomexport.h ${QET_DIR}/sources/conductorprofile.cpp ${QET_DIR}/sources/conductorprofile.h ${QET_DIR}/sources/conductorproperties.cpp diff --git a/docs/smart-device-bom.md b/docs/smart-device-bom.md index 583f2ce74..d62823919 100644 --- a/docs/smart-device-bom.md +++ b/docs/smart-device-bom.md @@ -2,135 +2,92 @@ ## Architecture -- A `.qet` project is XML, rooted at `project`. `QETProject::toXml()` and - `write()` serialize it; the file constructor, `readProjectXml()` and - `readDiagramsXml()` load it (`sources/qetproject.cpp`). Diagrams are - serialized by `Diagram::toXml()/fromXml()` (`sources/diagram.cpp`). -- `.elmt` symbol definitions are stored in collections and embedded into a - project by `XmlElementCollection`. `Element::buildFromXml()` builds their - graphical representation (`sources/qetgraphicsitem/element.cpp`). -- A placed component is an `Element`. `ElementData` holds its type and - `m_informations`, a `DiagramContext` key/value map. Instance properties are - read/written by `Element::fromXml()/toXml()` as `elementInformations` with - `elementInformation name="..."` children. -- `ElementPropertiesWidget` hosts `ElementInfoWidget`; the latter creates - rows from `QETInformation::elementInfoKeys()`. Edits use - `ChangeElementInformationCommand`, including live editing and undo/redo. -- Existing reporting uses the derived SQLite `projectDataBase`, - `element_nomenclature_view`, `ElementQueryWidget`, `BOMExportDialog` and - `QetGraphicsTableFactory`. `cli_export.cpp` also provides `--export-bom`. - The database is not the authoritative project storage. +- A `.qet` project is XML. Placed component properties are held in + `ElementData::m_informations`, a `DiagramContext`, and are serialized by the + existing `Element::fromXml()` and `Element::toXml()` path. +- `DeviceInformation` is a typed view over that existing context. It does not + introduce a second data store. Updates made by the properties editor continue + to use `ChangeElementInformationCommand`, including undo/redo and dirty state. +- The project database copies element contexts into `element_info` and exposes + reporting fields through `element_nomenclature_view`. +- GUI and CLI BOM exports both use `BomExport::defaultQuery()` against that + view. The existing `BOMExportDialog` remains the only GUI export entry point; + users can still customize columns, filters, and grouped/ungrouped output. ## Device Properties -`sources/properties/deviceinformation.h/.cpp` provide a small value type -and mapping to the existing context. There is no parallel device store. -`toContext(existing_context)` preserves unrelated properties and visibility -flags. Callers changing a placed element should use -`ChangeElementInformationCommand` to retain undo/redo and dirty tracking. +| Device field | XML/context key | Default BOM | +| --- | --- | --- | +| Device tag | `label` | Yes | +| Manufacturer | `manufacturer` | Yes | +| Part number | `manufacturer_reference` | Yes | +| Model | `model` | Yes | +| Description | `description` | Yes | +| Category | `category` | Yes | +| Quantity | `quantity` | Yes | +| Voltage rating | `voltage_rating` | Yes | +| Current rating | `current_rating` | Yes | +| Page | `folio` from the diagram | Yes | +| Notes | `notes` | Yes | -| Device field | XML/context key or source | Origin | CSV BOM | -| --- | --- | --- | --- | -| Device tag | `label` | Existing; BOM resolves formula labels | Yes | -| Manufacturer | `manufacturer` | Existing | Yes | -| Part number | `manufacturer_reference` | Existing | Yes | -| Model | `model` | New | Yes | -| Description | `description` | Existing | Yes | -| Category | `category` | New | Yes | -| Quantity | `quantity` | Existing | Yes | -| Page | Resolved diagram folio | Derived | Yes | -| Voltage rating | `voltage_rating` | New | No; stored metadata | -| Current rating | `current_rating` | New | No; stored metadata | -| Notes | `notes` | New | Yes | +The five new context keys are `model`, `category`, `voltage_rating`, +`current_rating`, and `notes`. They are available in the existing information +editor for Simple and Master elements, in symbol definitions, in the SQL +nomenclature view, and in the export column picker. -No XML version bump or migration is needed. Absent properties remain empty; -empty properties are omitted by the existing XML writer. Older keys keep -their original meaning. Generic context loading preserves unknown keys. -As before, serialization trims leading/trailing whitespace. Compatibility -with every historical QET release is not implied. - -Quantity remains text, as in existing QET properties, so decimal quantities -and existing unit conventions are not silently changed. A missing quantity -stays empty in the BOM: it is not silently assumed to be one. Ratings are -text (for example `24 V DC` and `16 A`). No numeric aggregation is performed. - -The five new rows are automatically available in the existing information -tab for normal/master symbols and in the symbol definition editor. No new -panel is required. Notes use the existing single-line property editor; -programmatically loaded multiline values are supported by XML and CSV. -New keys are also exposed in the existing SQL nomenclature view. +No XML version bump or migration is required. Missing keys read as empty +strings, empty properties are omitted by the existing writer, and unknown +context keys remain preserved. Quantity and ratings stay free text so existing +unit conventions and decimal quantities are not changed implicitly. ## BOM Policy -`sources/devicebomexport.h/.cpp` collect current in-memory project data, -including unsaved property changes, without a SQL cache dependency. +The default BOM query exports one row per Simple or Master element. Slave +contacts, terminal-strip elements, reports, thumbnails, and conductor +definitions are excluded. A Master device is counted once and PLC I/O entries +are not expanded. The existing `exclude_from_bom` property is honored by the +SQL view, including common true representations (`true`, `1`, `yes`, `on`). -- One row per Simple or Master element. -- Slave symbols, terminals, page reports, thumbnails and conductor definitions - are excluded; a master is counted once, not once per contact representation. - Even unlinked slave symbols are excluded, matching this device-level policy. -- The existing `exclude_from_bom` property is respected. -- Empty tags and part numbers do not discard otherwise eligible elements. -- Rows follow project page order, then device tag, then UUID for stable ties. - `Page` is the resolved folio label shown by QET; an empty label falls back - to the one-based project page position. -- Identical part numbers remain separate rows. Grouping is deferred because - conflicting manufacturers, ratings, tags and quantities need explicit rules. -- Auxiliary accessories are not expanded into extra rows in this MVP. -- A PLC master can be listed as one physical Master device, but its embedded - PLC I/O entries are never expanded into BOM rows. +The default columns are: -The Project menu action **Export BOM as CSV** exports fixed columns: -`No, Device tag, Manufacturer, Part number, Model, Description, Category, -Quantity, Page, Notes`. The legacy configurable export and CLI export retain -their previous behavior. Voltage and current ratings deliberately remain -device metadata in this MVP because they were not part of the requested BOM -schema; they can be added later without changing the stored project data. +`Device tag, Designation, Manufacturer, Part number, Model, Description, +Category, Quantity, Voltage rating, Current rating, Page, Notes`. -CSV is UTF-8 with a BOM, comma-delimited, CRLF record endings, double-quoted -fields and doubled embedded quotes. Embedded newlines are retained. Values -are exported verbatim so device tags and part numbers are not altered. CSV -quoting does not disable spreadsheet formulas: only export trusted projects, -or import all columns as **text** when inspecting untrusted project data. Text -import also preserves leading zeros. -`QSaveFile` commits atomically; open, write and commit errors are reported. -Cancel does not write a file. Read-only projects can still be exported. +The existing **Format as bill of materials** checkbox provides grouped output; +it is off by default so the initial export remains ungrouped. Users may change +the query and column order through the existing dialog. The command-line +`--export-bom` operation uses the same default query and column order. + +CSV output is UTF-8 with a BOM, semicolon-delimited, and quotes every field. +Embedded quotes are doubled and embedded newlines are retained. `QSaveFile` +provides atomic replacement; query, open, write, and commit failures are +reported without deleting an existing destination first. ## Verification -On the configured Windows/MSYS2 Qt5 system, from the repository root: +The smart-device test is registered explicitly in +`tests/qttest/CMakeLists.txt` and uses only Qt Test and Qt SQL. It is therefore +part of the normal cross-platform CMake/CTest flow: -```powershell -.\tests\qttest\run-smart-device-tests.ps1 +```sh +cmake -S . -B build -DPACKAGE_TESTS=ON +cmake --build build +ctest --test-dir build --output-on-failure ``` -The runner builds the application with `debug` and `no_kf5`, then links a QtTest -executable against the real application objects. Use `-SkipApplicationBuild` -only after building the current application sources. Results and generated -sample `.qet`, CSV and properties screenshot are under -`build-debug/smart-device-tests/`. CMake's explicit source list includes the -new files; qmake discovers them through its existing globs. - -Tests cover absent/legacy properties, context/XML round trips, custom-key -preservation, project save/reopen, BOM filtering and ordering, duplicate part -numbers, CSV encoding/escaping, write success/failure, properties UI undo/redo, -and the existing database report view. +`tst_smart_device` checks the metadata column contract, Simple/Master filtering, +stable page ordering, UTF-8 with Latin and non-Latin samples, CSV escaping, and +atomic write success/failure. Existing project XML save/load tests cover the +generic `DiagramContext` persistence path used by the new keys. Manual checks: -1. Open an existing project and edit a normal or master element's information - tab. Existing fields and the new Model/Category/ratings/Notes rows must show. -2. Enter manufacturer, part number, quantity and new properties. Apply, undo, - redo, save, close and reopen. Verify the same values are present. -3. Give two elements the same part number on different pages. Export through - Project > Export BOM as CSV. Expect separate rows with their own tags/pages. -4. Enable the existing exclusion checkbox for one element and export again. - Its row must be absent; changing a property without saving must affect CSV. -5. Open CSV with a UTF-8 CSV reader (import text columns when using Excel). - Check Turkish characters, leading-zero part numbers, commas and quotes. -6. Cancel export and try a non-writable destination. Cancellation must not - create a file; failure must show an error without destroying an existing CSV. +1. Open an existing project and edit a Simple or Master element's information. +2. Set all device fields, apply, undo, redo, save, close, and reopen. +3. Open Project > Export as CSV and verify the device columns are preselected. +4. Export with grouping both disabled and enabled. +5. Verify leading-zero part numbers, non-Latin text, quotes, and newlines in a + UTF-8 CSV reader. -Suggested review pieces: (1) device mapping and property/report registration, -(2) collector and CSV menu action, (3) tests and documentation. No cable, -PLC I/O, catalog integration or cabinet-layout feature is added. +Cable management, terminal-strip planning, automatic wire numbering, PLC I/O +expansion, panel layout, and manufacturer catalog integration are out of scope. diff --git a/lang/qet_en.ts b/lang/qet_en.ts index c8776c3f0..bcf971599 100644 --- a/lang/qet_en.ts +++ b/lang/qet_en.ts @@ -7568,34 +7568,6 @@ Available options: Exporter au format CSV Export to CSV - - - - Exporter la nomenclature des appareils au format CSV - Export device BOM as CSV - - - - Fichiers CSV (*.csv) - CSV files (*.csv) - - - - Exporter la nomenclature - Export BOM - - - - Impossible d'enregistrer la nomenclature dans %1. -%2 - Could not save the BOM to %1. -%2 - - - - Nomenclature exportée dans %1 - BOM exported to %1 - Gestionnaire de borniers (DEV) @@ -10995,31 +10967,6 @@ Do you want to replace it ? Description textuelle Textual description - - - Modèle - Model - - - - Catégorie - Category - - - - Tension nominale - Voltage rating - - - - Courant nominal - Current rating - - - - Notes - Notes - Numéro d'article diff --git a/lang/qet_tr.ts b/lang/qet_tr.ts index 69f34dc90..ec58ef57e 100644 --- a/lang/qet_tr.ts +++ b/lang/qet_tr.ts @@ -7685,34 +7685,6 @@ Mevcut seçenekler: Exporter au format CSV CSV formatında export et - - - - Exporter la nomenclature des appareils au format CSV - Cihaz malzeme listesini CSV olarak dışa aktar - - - - Fichiers CSV (*.csv) - CSV dosyaları (*.csv) - - - - Exporter la nomenclature - Malzeme listesini dışa aktar - - - - Impossible d'enregistrer la nomenclature dans %1. -%2 - Malzeme listesi %1 konumuna kaydedilemedi. -%2 - - - - Nomenclature exportée dans %1 - Malzeme listesi %1 konumuna aktarıldı - Gestionnaire de borniers (DEV) @@ -10995,31 +10967,6 @@ Değiştirmek ister misiniz? Description textuelle Metin açıklaması - - - Modèle - Model - - - - Catégorie - Kategori - - - - Tension nominale - Anma gerilimi - - - - Courant nominal - Anma akımı - - - - Notes - Notlar - Numéro d'article diff --git a/sources/bomexport.cpp b/sources/bomexport.cpp new file mode 100644 index 000000000..eefdd2e94 --- /dev/null +++ b/sources/bomexport.cpp @@ -0,0 +1,113 @@ +/* + Copyright 2006-2026 The QElectroTech Team + This file is part of QElectroTech. + + QElectroTech is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + QElectroTech is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with QElectroTech. If not, see . +*/ +#include "bomexport.h" + +#include +#include +#include + +namespace { +QString csvField(QString value) +{ + value.replace(QLatin1Char('"'), QStringLiteral("\"\"")); + return QLatin1Char('"') + value + QLatin1Char('"'); +} + +QByteArray csvRecord(const QStringList &values) +{ + QStringList escaped; + for (const auto &value : values) { + escaped.append(csvField(value)); + } + return (escaped.join(QLatin1Char(';')) + QLatin1Char('\n')).toUtf8(); +} +} + +QStringList BomExport::defaultColumns() +{ + return { + QStringLiteral("label"), + QStringLiteral("designation"), + QStringLiteral("manufacturer"), + QStringLiteral("manufacturer_reference"), + QStringLiteral("model"), + QStringLiteral("description"), + QStringLiteral("category"), + QStringLiteral("quantity"), + QStringLiteral("voltage_rating"), + QStringLiteral("current_rating"), + QStringLiteral("folio"), + QStringLiteral("notes") + }; +} + +QString BomExport::defaultQuery() +{ + return QStringLiteral("SELECT %1 FROM element_nomenclature_view " + "WHERE ( element_type = 'simple' OR element_type = 'master') " + "ORDER BY diagram_position, position, label") + .arg(defaultColumns().join(QStringLiteral(", "))); +} + +QByteArray BomExport::toCsv(QSqlQuery &query, const QStringList &headers, + bool include_headers, int *row_count) +{ + QByteArray csv("\xEF\xBB\xBF"); + if (include_headers) { + csv += csvRecord(headers); + } + int rows = 0; + while (query.next()) + { + QStringList values; + for (int i = 0; i < query.record().count(); ++i) { + values.append(query.value(i).toString()); + } + csv += csvRecord(values); + ++rows; + } + if (row_count) { + *row_count = rows; + } + return csv; +} + +bool BomExport::writeCsv(const QString &file_path, const QByteArray &csv, + QString *error) +{ + if (error) { + error->clear(); + } + QSaveFile file(file_path); + if (!file.open(QIODevice::WriteOnly) || file.write(csv) != csv.size()) + { + if (error) { + *error = file.errorString(); + } + file.cancelWriting(); + return false; + } + if (!file.commit()) + { + if (error) { + *error = file.errorString(); + } + return false; + } + return true; +} diff --git a/sources/devicebomexport.h b/sources/bomexport.h similarity index 61% rename from sources/devicebomexport.h rename to sources/bomexport.h index 1fe0332d0..0241165a0 100644 --- a/sources/devicebomexport.h +++ b/sources/bomexport.h @@ -15,29 +15,23 @@ You should have received a copy of the GNU General Public License along with QElectroTech. If not, see . */ -#ifndef DEVICEBOMEXPORT_H -#define DEVICEBOMEXPORT_H - -#include "properties/deviceinformation.h" +#ifndef BOMEXPORT_H +#define BOMEXPORT_H #include -#include #include +#include -class QETProject; +class QSqlQuery; -class DeviceBomExport +namespace BomExport { - public: - struct Row { - DeviceInformation m_device; - QString m_page; - }; + QStringList defaultColumns(); + QString defaultQuery(); + QByteArray toCsv(QSqlQuery &query, const QStringList &headers, + bool include_headers = true, int *row_count = nullptr); + bool writeCsv(const QString &file_path, const QByteArray &csv, + QString *error = nullptr); +} - static QList collect(const QETProject &project); - static QByteArray toCsv(const QList &rows); - static bool writeCsv(const QETProject &project, const QString &file_path, - QString *error = nullptr); -}; - -#endif // DEVICEBOMEXPORT_H +#endif // BOMEXPORT_H diff --git a/sources/cli_export.cpp b/sources/cli_export.cpp index 16b9b15c7..a132a8e29 100644 --- a/sources/cli_export.cpp +++ b/sources/cli_export.cpp @@ -16,6 +16,7 @@ along with QElectroTech. If not, see . */ #include "cli_export.h" +#include "bomexport.h" #include "bordertitleblock.h" #include "conductornumexport.h" @@ -304,61 +305,40 @@ int exportCsv(QETProject &project, const QString &format, const QString &output) return 0; } -/// Quote a field for CSV output (RFC-4180 style, ';' delimiter). -QString csvField(const QString &value) -{ - if (value.contains(';') || value.contains('"') - || value.contains('\n') || value.contains('\r')) { - QString v = value; - v.replace('"', "\"\""); - return '"' % v % '"'; - } - return value; -} - -/// Bill of materials: one row per element, key component-data fields. -/// Pulls from QET's own project database (the same source as the GUI BOM -/// export), so the output matches what the editor produces. +/// Bill of materials from the same project database and default query as the +/// GUI nomenclature export. int exportBom(QETProject &project, const QString &output) { - // The project database is built lazily; force a (re)build before querying. project.dataBase()->updateDB(); - - static const QStringList columns { - "label", "designation", "manufacturer", "manufacturer_reference", - "quantity", "location", "function", "title", "folio" - }; - - QSqlQuery query = project.dataBase()->newQuery( - "SELECT " % columns.join(", ") % - " FROM element_nomenclature_view ORDER BY label"); + QSqlQuery query = project.dataBase()->newQuery(BomExport::defaultQuery()); if (!query.exec()) { err << "BOM query failed: " << query.lastError().text() << "\n"; return 1; } - - QString csv = columns.join(";") % "\n"; int rows = 0; - while (query.next()) { - QStringList values; - for (int i = 0; i < columns.size(); ++i) - values << csvField(query.value(i).toString()); - csv += values.join(";") % "\n"; - ++rows; - } - - QFile file(output); - if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) { - err << "Cannot open '" << output << "' for writing.\n"; + const auto csv = BomExport::toCsv( + query, BomExport::defaultColumns(), true, &rows); + QString error; + if (!BomExport::writeCsv(output, csv, &error)) { + err << "Cannot write '" << output << "': " << error << "\n"; return 1; } - QTextStream fout(&file); - fout << csv; - file.close(); out << "Exported " << rows << " component(s) -> " << output << "\n"; return 0; } +QString csvField(const QString &value) +{ + if (value.contains(QLatin1Char(';')) || value.contains(QLatin1Char('"')) + || value.contains(QLatin1Char('\n')) || value.contains(QLatin1Char('\r'))) + { + QString escaped = value; + escaped.replace(QLatin1Char('"'), QStringLiteral("\"\"")); + return QLatin1Char('"') % escaped % QLatin1Char('"'); + } + return value; +} + /// Count terminals on @p element that no conductor connects to. int freeTerminals(Element *element) { diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index bc3711737..1549f6ce0 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -663,7 +663,8 @@ void projectDataBase::createElementNomenclatureView() "di.folio AS folio," "e.pos AS position " " FROM element_info ei, diagram_info di, element e, diagram d" - " WHERE ei.element_uuid = e.uuid AND e.diagram_uuid = d.uuid AND di.diagram_uuid = d.uuid AND (ei.exclude_from_bom IS NOT 'true')" + " WHERE ei.element_uuid = e.uuid AND e.diagram_uuid = d.uuid AND di.diagram_uuid = d.uuid" + " AND COALESCE(LOWER(TRIM(ei.exclude_from_bom)), '') NOT IN ('true', '1', 'yes', 'on')" //The element table holds every element of the project; which //kinds belong in a nomenclature is this view's business, not //the table's. Kept identical to the mask populateElementTable() diff --git a/sources/dataBase/ui/elementquerywidget.cpp b/sources/dataBase/ui/elementquerywidget.cpp index fff775b82..aafdeb32d 100644 --- a/sources/dataBase/ui/elementquerywidget.cpp +++ b/sources/dataBase/ui/elementquerywidget.cpp @@ -160,6 +160,8 @@ void ElementQueryWidget::setQuery(const QString &query) { auto str_type = rxm.captured(1); where.remove(str_type); + const bool all_master_types = str_type.contains( + ElementData::typeToString(ElementData::Master)); int c=0; ui->m_simple_cb->setChecked (str_type.contains(ElementData::typeToString(ElementData::Simple)) ? true : false); @@ -170,23 +172,23 @@ void ElementQueryWidget::setQuery(const QString &query) if (ui->m_terminal_cb->isChecked()) { ++c; } - ui->m_coil_cb->setChecked (str_type.contains(ElementData::masterTypeToString(ElementData::Coil)) ? true : false); + ui->m_coil_cb->setChecked (all_master_types || str_type.contains(ElementData::masterTypeToString(ElementData::Coil))); if (ui->m_coil_cb->isChecked()) { ++c; } - ui->m_button_cb->setChecked (str_type.contains(ElementData::masterTypeToString(ElementData::Commutator)) ? true : false); + ui->m_button_cb->setChecked (all_master_types || str_type.contains(ElementData::masterTypeToString(ElementData::Commutator))); if (ui->m_button_cb->isChecked()) { ++c; } - ui->m_protection_cb->setChecked(str_type.contains(ElementData::masterTypeToString(ElementData::Protection)) ? true : false); - if (ui->m_protection_cb) { + ui->m_protection_cb->setChecked(all_master_types || str_type.contains(ElementData::masterTypeToString(ElementData::Protection))); + if (ui->m_protection_cb->isChecked()) { ++c; } ui->m_thumbnail_cb->setChecked (str_type.contains(ElementData::typeToString(ElementData::Thumbnail)) ? true : false); if (ui->m_thumbnail_cb->isChecked()) { ++c; } - ui->m_plc_cb->setChecked (str_type.contains(ElementData::masterTypeToString(ElementData::PLC)) ? true : false); + ui->m_plc_cb->setChecked (all_master_types || str_type.contains(ElementData::masterTypeToString(ElementData::PLC))); if (ui->m_plc_cb->isChecked()) { ++c; } @@ -352,22 +354,32 @@ QString ElementQueryWidget::queryStr() const where += QStringLiteral(" element_type = '") += ElementData::typeToString(ElementData::Simple) += "'"; b = true; } - if (ui->m_button_cb->isChecked()) { + const bool all_master_types = ui->m_button_cb->isChecked() + && ui->m_coil_cb->isChecked() + && ui->m_protection_cb->isChecked() + && ui->m_plc_cb->isChecked(); + if (all_master_types) { + if (b) where += " OR"; + where += QStringLiteral(" element_type = '") + += ElementData::typeToString(ElementData::Master) += "'"; + b = true; + } + if (!all_master_types && ui->m_button_cb->isChecked()) { if (b) where +=" OR"; where += QStringLiteral(" element_sub_type = '") += ElementData::masterTypeToString(ElementData::Commutator) += "'"; b = true; } - if (ui->m_coil_cb->isChecked()) { + if (!all_master_types && ui->m_coil_cb->isChecked()) { if (b) where +=" OR"; where += QStringLiteral(" element_sub_type = '") += ElementData::masterTypeToString(ElementData::Coil) += "'"; b = true; } - if (ui->m_protection_cb->isChecked()) { + if (!all_master_types && ui->m_protection_cb->isChecked()) { if (b) where +=" OR"; where += QStringLiteral(" element_sub_type = '") += ElementData::masterTypeToString(ElementData::Protection) += "'"; b = true; } - if (ui->m_plc_cb->isChecked()) { + if (!all_master_types && ui->m_plc_cb->isChecked()) { if (b) where +=" OR"; where += QStringLiteral(" element_sub_type = '") += ElementData::masterTypeToString(ElementData::PLC) += "'"; b = true; diff --git a/sources/devicebomexport.cpp b/sources/devicebomexport.cpp deleted file mode 100644 index 485d341c5..000000000 --- a/sources/devicebomexport.cpp +++ /dev/null @@ -1,119 +0,0 @@ -/* - Copyright 2006-2026 The QElectroTech Team - This file is part of QElectroTech. - - QElectroTech is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 2 of the License, or - (at your option) any later version. - - QElectroTech is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with QElectroTech. If not, see . -*/ -#include "devicebomexport.h" - -#include "diagram.h" -#include "qetgraphicsitem/element.h" -#include "qetproject.h" - -#include -#include -#include - -namespace { -QByteArray csvRecord(const QStringList &values) -{ - QStringList escaped; - for (QString value : values) { - value.replace(QLatin1Char('"'), QStringLiteral("\"\"")); - escaped.append(QLatin1Char('"') + value + QLatin1Char('"')); - } - return (escaped.join(QLatin1Char(',')) + QStringLiteral("\r\n")).toUtf8(); -} -} - -QList DeviceBomExport::collect(const QETProject &project) -{ - QList rows; - int page = 0; - for (Diagram *diagram : project.diagrams()) - { - const QString page_position = QString::number(++page); - const QString page_label = diagram->border_and_titleblock.finalfolio().isEmpty() - ? page_position - : diagram->border_and_titleblock.finalfolio(); - auto elements = diagram->elements(); - // Scene stacking order is not stable across save/load. UUID breaks tag ties. - std::sort(elements.begin(), elements.end(), [](Element *a, Element *b) { - const int compare = QString::compare(a->actualLabel(), b->actualLabel()); - return compare ? compare < 0 : a->uuid().toString() < b->uuid().toString(); - }); - for (Element *element : elements) - { - const auto type = element->elementData().m_type; - // Slaves are representations of a master, not additional devices. - // Terminal-specific inventory remains outside this MVP. - if (type != ElementData::Simple && type != ElementData::Master) { - continue; - } - const auto context = element->elementInformations(); - if (context.value(QStringLiteral("exclude_from_bom")).toBool()) { - continue; - } - auto device = DeviceInformation::fromContext(context); - device.m_device_tag = element->actualLabel(); - rows.append({device, page_label}); - } - } - return rows; -} - -QByteArray DeviceBomExport::toCsv(const QList &rows) -{ - // UTF-8 BOM lets desktop spreadsheet applications detect Turkish text too. - QByteArray csv("\xEF\xBB\xBF"); - csv += csvRecord({QStringLiteral("No"), QStringLiteral("Device tag"), - QStringLiteral("Manufacturer"), QStringLiteral("Part number"), - QStringLiteral("Model"), QStringLiteral("Description"), - QStringLiteral("Category"), QStringLiteral("Quantity"), - QStringLiteral("Page"), QStringLiteral("Notes")}); - int number = 0; - for (const auto &row : rows) - { - const auto &device = row.m_device; - csv += csvRecord({QString::number(++number), device.m_device_tag, - device.m_manufacturer, device.m_part_number, device.m_model, - device.m_description, device.m_category, device.m_quantity, - row.m_page, device.m_notes}); - } - return csv; -} - -bool DeviceBomExport::writeCsv(const QETProject &project, const QString &file_path, - QString *error) -{ - if (error) { - error->clear(); - } - QSaveFile file(file_path); - if (!file.open(QIODevice::WriteOnly)) { - if (error) *error = file.errorString(); - return false; - } - const auto csv = toCsv(collect(project)); - if (file.write(csv) != csv.size()) { - if (error) *error = file.errorString(); - file.cancelWriting(); - return false; - } - if (!file.commit()) { - if (error) *error = file.errorString(); - return false; - } - return true; -} diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp index d04f102d3..724fde835 100644 --- a/sources/qetdiagrameditor.cpp +++ b/sources/qetdiagrameditor.cpp @@ -21,7 +21,6 @@ #include "QWidgetAnimation/qwidgetanimation.h" #include "autoNum/ui/autonumberingdockwidget.h" #include "conductornumexport.h" -#include "devicebomexport.h" #include "diagramcommands.h" #include "diagramevent/diagrameventaddimage.h" #ifdef QET_HAS_QTPDF @@ -471,34 +470,6 @@ void QETDiagramEditor::setUpActions() bom.exec(); }); - m_device_bom_export = new QAction(QET::Icons::DocumentSpreadsheet, - tr("Exporter la nomenclature des appareils au format CSV"), this); - m_device_bom_export->setObjectName(QStringLiteral("export_device_bom_csv")); - connect(m_device_bom_export, &QAction::triggered, this, [this]() { - auto *view = currentProjectView(); - if (!view) return; - QPointer project = view->project(); - QString dir = project->currentDir(); - if (dir.isEmpty()) dir = QETApp::documentDir(); - QFileDialog dialog( - this, - tr("Exporter la nomenclature des appareils au format CSV"), - QDir(dir).filePath(QStringLiteral("bom.csv")), - tr("Fichiers CSV (*.csv)")); - dialog.setAcceptMode(QFileDialog::AcceptSave); - dialog.setDefaultSuffix(QStringLiteral("csv")); - if (dialog.exec() != QDialog::Accepted || !project) return; - const QString path = dialog.selectedFiles().value(0); - if (path.isEmpty()) return; - QString error; - if (!DeviceBomExport::writeCsv(*project, path, &error)) { - QMessageBox::critical(this, tr("Exporter la nomenclature"), - tr("Impossible d'enregistrer la nomenclature dans %1.\n%2").arg(path, error)); - } else { - statusBar()->showMessage(tr("Nomenclature exportée dans %1").arg(path), 5000); - } - }); - //Add a nomenclature item m_add_nomenclature = new QAction(QET::Icons::TableOfContent, tr("Ajouter une nomenclature"), this); connect(m_add_nomenclature, &QAction::triggered, this, [=]() { @@ -977,7 +948,6 @@ void QETDiagramEditor::setUpMenu() menu_project -> addAction(m_add_summary); menu_project -> addAction(m_add_nomenclature); menu_project -> addAction(m_csv_export); - menu_project -> addAction(m_device_bom_export); menu_project -> addAction(m_project_export_conductor_num); menu_project -> addAction(m_terminal_strip_dialog); menu_project -> addAction(m_project_terminalBloc); @@ -1829,7 +1799,6 @@ void QETDiagramEditor::slot_updateActions() m_add_summary -> setEnabled(editable_project); m_add_nomenclature -> setEnabled(editable_project); m_csv_export -> setEnabled(editable_project); - m_device_bom_export -> setEnabled(opened_project); m_project_export_conductor_num-> setEnabled(opened_project); m_terminal_strip_dialog -> setEnabled(editable_project); m_project_export_wiring_list -> setEnabled(opened_project); diff --git a/sources/qetdiagrameditor.h b/sources/qetdiagrameditor.h index 313d5e803..ed07a2395 100644 --- a/sources/qetdiagrameditor.h +++ b/sources/qetdiagrameditor.h @@ -203,7 +203,6 @@ class QETDiagramEditor : public QETMainWindow *m_remove_diagram_from_project, ///< Delete a diagram from the current project *m_clean_project, ///< Clean the content of the current project by removing useless items *m_csv_export, ///< generate nomenclature - *m_device_bom_export, ///< Export an ungrouped device BOM *m_add_nomenclature, ///< Add nomenclature graphics item; *m_add_summary, ///m_main_layout->insertWidget(0, m_query_widget); - //By default format as bom is clicked - on_m_format_as_bom_clicked(true); + m_query_widget->setQuery(BomExport::defaultQuery()); + on_m_format_as_bom_clicked(false); } /** @@ -67,90 +68,58 @@ int BOMExportDialog::exec() if (dir.isEmpty()) dir = QETApp::documentDir(); QString file_name = dir % "/" % tr("nomenclature_") % QString(m_project ->title() % ".csv"); QString file_path = QFileDialog::getSaveFileName(this, tr("Enregister sous... "), file_name, tr("Fichiers csv (*.csv)")); - QFile file(file_path); if (!file_path.isEmpty()) { - if (QFile::exists(file_path )) - { - // if file already exist -> delete it - if (!QFile::remove(file_path) ) - { - QMessageBox::critical(this, tr("Erreur"), - tr("Impossible de remplacer le fichier!\n\n")+ - "Destination : "+file_path+"\n"); - } - } - if (file.open(QIODevice::WriteOnly | QIODevice::Text)) - { - QTextStream stream(&file); - stream << getBom() << &Qt::endl(stream); + QString error; + const auto csv = getBom(&error); + if (!error.isEmpty() || !BomExport::writeCsv(file_path, csv, &error)) { + QMessageBox::critical( + this, tr("Erreur"), + tr("Impossible d'enregistrer la nomenclature dans %1.\n%2") + .arg(file_path, error)); } } } return r; } -QString BOMExportDialog::getBom() +QByteArray BOMExportDialog::getBom(QString *error) { + if (error) { + error->clear(); + } m_project->dataBase()->updateDB(); auto query_ = m_project->dataBase()->newQuery(m_query_widget->queryStr()); - QString return_string; if (!query_.exec()) { qDebug() << "BOMExportDialog::getBom : query errir : " << query_.lastError(); + if (error) { + *error = query_.lastError().text(); + } + return {}; } - else + + QStringList header_names; + if (ui->m_include_headers->isChecked()) { - //HEADERS - if (ui->m_include_headers) + const auto record_ = query_.record(); + for (int i = 0; i < record_.count(); ++i) { - auto record_ = query_.record(); - QStringList header_name; - for (auto i=0 ; im_include_headers->isChecked()); } /** diff --git a/sources/ui/bomexportdialog.h b/sources/ui/bomexportdialog.h index 5140e26b3..36fa40d15 100644 --- a/sources/ui/bomexportdialog.h +++ b/sources/ui/bomexportdialog.h @@ -19,6 +19,7 @@ #define BOMEXPORTDIALOG_H #include +#include class QETProject; class ElementQueryWidget; @@ -39,7 +40,7 @@ class BOMExportDialog : public QDialog ~BOMExportDialog() override; virtual int exec() override; - QString getBom(); + QByteArray getBom(QString *error = nullptr); private slots: void on_m_format_as_bom_clicked(bool checked); diff --git a/sources/ui/bomexportdialog.ui b/sources/ui/bomexportdialog.ui index e578d0399..b9e60b329 100644 --- a/sources/ui/bomexportdialog.ui +++ b/sources/ui/bomexportdialog.ui @@ -36,7 +36,7 @@ Formater en tant que liste de materiel - true + false diff --git a/tests/qttest/CMakeLists.txt b/tests/qttest/CMakeLists.txt index 94d082282..4fec2b9a3 100644 --- a/tests/qttest/CMakeLists.txt +++ b/tests/qttest/CMakeLists.txt @@ -91,3 +91,12 @@ add_executable(tst_contactusage tst_contactusage.cpp) add_test(NAME tst_contactusage COMMAND tst_contactusage) target_include_directories(tst_contactusage PRIVATE ${QET_DIR}/sources) target_link_libraries(tst_contactusage PRIVATE Qt::Test) + +add_executable( + tst_smart_device + tst_smart_device.cpp + ${QET_DIR}/sources/bomexport.cpp + ${QET_DIR}/sources/bomexport.h) +add_test(NAME tst_smart_device COMMAND tst_smart_device) +target_include_directories(tst_smart_device PRIVATE ${QET_DIR}/sources) +target_link_libraries(tst_smart_device PRIVATE Qt::Test Qt::Sql) diff --git a/tests/qttest/run-smart-device-tests.ps1 b/tests/qttest/run-smart-device-tests.ps1 deleted file mode 100644 index ef90156f0..000000000 --- a/tests/qttest/run-smart-device-tests.ps1 +++ /dev/null @@ -1,49 +0,0 @@ -param( - [string]$MsysRoot = 'C:\msys64', - [string]$BuildDir = (Join-Path $PSScriptRoot '..\..\build-debug'), - [int]$Jobs = 8, - [switch]$SkipApplicationBuild -) - -$ErrorActionPreference = 'Stop' -$repo = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path -$BuildDir = [IO.Path]::GetFullPath($BuildDir) -$oldPath = $env:Path -$oldPlatform = $env:QT_QPA_PLATFORM -$oldFontDir = $env:QT_QPA_FONTDIR -$oldArtifacts = $env:QET_SMART_DEVICE_ARTIFACT_DIR -try { - $env:Path = "$MsysRoot\ucrt64\bin;$MsysRoot\usr\bin;$env:Path" - New-Item -ItemType Directory -Force -Path $BuildDir | Out-Null - Push-Location $BuildDir - try { - if (-not $SkipApplicationBuild) { - & qmake-qt5 (Join-Path $repo 'qelectrotech.pro') -spec win32-g++ CONFIG+=debug CONFIG+=no_kf5 CONFIG-=release DEFINES+=BUILD_WITHOUT_KF - if ($LASTEXITCODE) { throw 'Application qmake failed' } - & mingw32-make "-j$Jobs" - if ($LASTEXITCODE) { throw 'Application build failed' } - } - } finally { Pop-Location } - - $testDir = Join-Path $BuildDir 'smart-device-tests' - New-Item -ItemType Directory -Force -Path $testDir | Out-Null - Push-Location $testDir - try { - & qmake-qt5 (Join-Path $PSScriptRoot 'smart_device.pro') "QET_BUILD_DIR=$($BuildDir.Replace('\', '/'))" CONFIG+=debug CONFIG-=release - if ($LASTEXITCODE) { throw 'Test qmake failed' } - & mingw32-make "-j$Jobs" - if ($LASTEXITCODE) { throw 'Test build failed' } - $env:QT_QPA_PLATFORM = 'offscreen' - $env:QT_QPA_FONTDIR = Join-Path $env:WINDIR 'Fonts' - $env:QET_SMART_DEVICE_ARTIFACT_DIR = Join-Path $testDir 'artifacts' - & .\debug\tst_smart_device.exe -o results.txt,txt - $result = $LASTEXITCODE - Get-Content results.txt - if ($result) { throw "Smart device tests failed: $result" } - } finally { Pop-Location } -} finally { - $env:Path = $oldPath - $env:QT_QPA_PLATFORM = $oldPlatform - $env:QT_QPA_FONTDIR = $oldFontDir - $env:QET_SMART_DEVICE_ARTIFACT_DIR = $oldArtifacts -} diff --git a/tests/qttest/smart_device.pro b/tests/qttest/smart_device.pro deleted file mode 100644 index 124a3abd4..000000000 --- a/tests/qttest/smart_device.pro +++ /dev/null @@ -1,24 +0,0 @@ -QT += widgets xml sql network concurrent svg printsupport testlib -CONFIG += console testcase c++17 -CONFIG -= app_bundle -TEMPLATE = app -TARGET = tst_smart_device - -# Link the real application objects, built with the same Qt and no_kf5 config. -isEmpty(QET_BUILD_DIR): QET_BUILD_DIR = $$clean_path($$PWD/../../build-debug) -INCLUDEPATH += $$PWD/../.. $$PWD/../../sources $$PWD/../../SingleApplication -INCLUDEPATH += $$PWD/../../sources/ui $$PWD/../../sources/TerminalStrip/ui -INCLUDEPATH += $$PWD/../../sources/ui/nokde $$QET_BUILD_DIR -DEFINES += BUILD_WITHOUT_KF BUILD_WITHOUT_KF5 QAPPLICATION_CLASS=QApplication -SOURCES += $$PWD/tst_smart_device.cpp -win32 { - QET_OBJECTS = $$files($$QET_BUILD_DIR/debug/*.o) - QET_OBJECTS -= $$QET_BUILD_DIR/debug/main.o - LIBS += -lsqlite3 -ladvapi32 -} else { - QET_OBJECTS = $$files($$QET_BUILD_DIR/*.o) - QET_OBJECTS -= $$QET_BUILD_DIR/main.o - LIBS += -lsqlite3 -} -isEmpty(QET_OBJECTS): error(Build the application before running these tests) -OBJECTS += $$QET_OBJECTS diff --git a/tests/qttest/tst_smart_device.cpp b/tests/qttest/tst_smart_device.cpp index 6ea603783..b054a6eba 100644 --- a/tests/qttest/tst_smart_device.cpp +++ b/tests/qttest/tst_smart_device.cpp @@ -15,311 +15,121 @@ You should have received a copy of the GNU General Public License along with QElectroTech. If not, see . */ -#include -#include -#include -#include -#include +#include "bomexport.h" -#include "ElementsCollection/xmlelementcollection.h" -#include "dataBase/projectdatabase.h" -#include "devicebomexport.h" -#include "diagram.h" -#include "qetgraphicsitem/element.h" -#include "qetinformation.h" -#include "qetproject.h" -#include "qetresult.h" -#include "ui/elementinfopartwidget.h" -#include "ui/elementinfowidget.h" +#include +#include +#include +#include +#include +#include class SmartDeviceTest : public QObject { Q_OBJECT - QTemporaryDir m_settings; - Element *addElement(QETProject &project, Diagram *diagram, const QString &tag, - ElementData::Type type = ElementData::Simple) - { - QDomDocument doc; - doc.setContent(QStringLiteral( - "" - "Test device" - "")); - const QString name = QUuid::createUuid().toString(QUuid::WithoutBraces) + ".elmt"; - if (!project.embeddedElementCollection()->addElementDefinition("import", name, doc.documentElement())) - return nullptr; - int state = -1; - auto *element = new Element(ElementsLocation("embed://import/" + name, &project), nullptr, &state); - if (state != 0) { - delete element; - return nullptr; - } - diagram->addItem(element); - auto data = element->elementData(); - data.m_type = type; - data.m_informations.addValue("label", tag); - element->setElementData(data); - return element; - } - - DeviceInformation sample() const - { - DeviceInformation info; - info.m_device_tag = "-K1"; - info.m_manufacturer = QString::fromUtf8("\xC3\x96rnek Elektrik"); - info.m_part_number = "001234"; - info.m_model = "RX-24"; - info.m_description = QString::fromUtf8("G\xC3\xBC\xC3\xA7 kontakt\xC3\xB6r\xC3\xBC"); - info.m_category = "Contactor"; - info.m_quantity = "2.5"; - info.m_voltage_rating = "24 V DC"; - info.m_current_rating = "16 A"; - info.m_notes = "Panel A, \"spare\"; check\nSecond line"; - return info; - } - -private slots: - void initTestCase() - { - QCoreApplication::setOrganizationName("QET-SmartDeviceTests"); - QCoreApplication::setApplicationName("IsolatedTests"); - QSettings::setDefaultFormat(QSettings::IniFormat); - QSettings::setPath(QSettings::IniFormat, QSettings::UserScope, m_settings.path()); - QSettings::setPath(QSettings::IniFormat, QSettings::SystemScope, m_settings.path()); - QETProject::setBackupEnabled(false); - } - - void emptyAndLegacyContext() - { - const auto empty = DeviceInformation::fromContext(DiagramContext()); - QVERIFY(empty.toContext().keys().isEmpty()); - QVERIFY(empty.m_quantity.isEmpty()); - QDomDocument doc; - QVERIFY(doc.setContent(QStringLiteral( - "K7" - "0007" - ""))); - DiagramContext context; - context.fromXml(doc.documentElement(), "elementInformation"); - const auto legacy = DeviceInformation::fromContext(context); - QCOMPARE(legacy.m_device_tag, QString("K7")); - QCOMPARE(legacy.m_part_number, QString("0007")); - QVERIFY(legacy.m_model.isEmpty()); - QVERIFY(legacy.m_voltage_rating.isEmpty()); - QVERIFY(legacy.m_current_rating.isEmpty()); - QVERIFY(legacy.m_notes.isEmpty()); - } - - void contextRoundTripAndMerge() - { - DiagramContext original; - original.addValue("custom_value", "Keep", false); - original.addValue("manufacturer", "Old", false); - original.addValue("exclude_from_bom", "true"); - auto info = sample(); - auto context = info.toContext(original); - QVERIFY(!context.keyMustShow("manufacturer")); - QVERIFY(!context.keyMustShow("custom_value")); - QCOMPARE(context.value("custom_value").toString(), QString("Keep")); - QDomDocument doc; - auto xml = doc.createElement("elementInformations"); - doc.appendChild(xml); - context.toXml(xml, "elementInformation"); - QDomDocument reparsed; - QVERIFY(reparsed.setContent(doc.toByteArray())); - DiagramContext restored; - restored.fromXml(reparsed.documentElement(), "elementInformation"); - QVERIFY(restored == context); - QVERIFY(DeviceInformation::fromContext(restored).toContext() == info.toContext()); - info.m_model.clear(); - const auto cleared = info.toContext(restored); - QVERIFY(!cleared.contains("model")); - QCOMPARE(cleared.value("exclude_from_bom").toString(), QString("true")); - } - - void projectSaveLoad() - { - QTemporaryDir temp; - QETProject project; - auto *diagram = project.addNewDiagram(); - diagram->border_and_titleblock.setFolio("A-01"); - auto *element = addElement(project, diagram, "-K1"); - QVERIFY(element); - element->setElementInformations(sample().toContext()); - auto *second_diagram = project.addNewDiagram(); - second_diagram->border_and_titleblock.setFolio("A-02"); - diagram->border_and_titleblock.setFolioData(1, 2); - second_diagram->border_and_titleblock.setFolioData(2, 2); - auto *legacy = addElement(project, second_diagram, "-K2"); - QVERIFY(legacy); - const auto before = DeviceBomExport::toCsv(DeviceBomExport::collect(project)); - project.setFilePath(temp.filePath("roundtrip.qet")); - const auto result = project.write(); - QVERIFY2(result.isOk(), qPrintable(result.errorMessage())); - QETProject restored(project.filePath()); - QCOMPARE(restored.state(), QETProject::Ok); - QCOMPARE(restored.diagrams().size(), 2); - const auto rows = DeviceBomExport::collect(restored); - QCOMPARE(rows.size(), 2); - QCOMPARE(rows.first().m_page, QString("A-01")); - QCOMPARE(rows.last().m_page, QString("A-02")); - QVERIFY(rows.first().m_device.toContext() == sample().toContext()); - QVERIFY(rows.last().m_device.m_model.isEmpty()); - QVERIFY(rows.last().m_device.m_quantity.isEmpty()); - QCOMPARE(DeviceBomExport::toCsv(rows), before); - - const QString artifacts = qEnvironmentVariable("QET_SMART_DEVICE_ARTIFACT_DIR"); - if (!artifacts.isEmpty()) { - QDir().mkpath(artifacts); - restored.setFilePath(QDir(artifacts).filePath("sample.qet")); - QVERIFY(restored.write().isOk()); - QVERIFY(DeviceBomExport::writeCsv(restored, QDir(artifacts).filePath("sample.csv"))); - } - } - - void collectDevices() - { - QETProject project; - auto *first = project.addNewDiagram(); - auto *second = project.addNewDiagram(); - first->border_and_titleblock.setFolio("DEV-01"); - second->border_and_titleblock.setFolio("DEV-10"); - first->border_and_titleblock.setFolioData(1, 2); - second->border_and_titleblock.setFolioData(2, 2); - for (auto type : {ElementData::Simple, ElementData::Master, ElementData::Terminal, - ElementData::Slave, ElementData::NextReport, ElementData::PreviousReport, - ElementData::Thumbnail, ElementData::ConductorDefinition}) { - auto *element = addElement(project, first, QString::number(type), type); - QVERIFY(element); - if (type == ElementData::Master) { - auto data = element->elementData(); - data.m_master_type = ElementData::PLC; - data.m_plc_master_data.ios.resize(2); - element->setElementData(data); - } - } - auto *excluded = addElement(project, first, "Excluded"); - QVERIFY(excluded); - auto context = excluded->elementInformations(); - context.addValue("exclude_from_bom", "true"); - excluded->setElementInformations(context); - for (const QString tag : {"Z2", "A2"}) { - auto *element = addElement(project, second, tag); - QVERIFY(element); - auto info = sample(); - info.m_device_tag = tag; - element->setElementInformations(info.toContext()); - } - const auto rows = DeviceBomExport::collect(project); - QCOMPARE(rows.size(), 4); - QCOMPARE(rows.at(0).m_page, QString("DEV-01")); - QCOMPARE(rows.at(0).m_device.m_device_tag, QString("1")); - QCOMPARE(rows.at(1).m_device.m_device_tag, QString("8")); - QCOMPARE(rows.at(2).m_page, QString("DEV-10")); - QCOMPARE(rows.at(2).m_device.m_device_tag, QString("A2")); - QCOMPARE(rows.at(3).m_device.m_device_tag, QString("Z2")); - QCOMPARE(rows.at(2).m_device.m_part_number, rows.at(3).m_device.m_part_number); - QCOMPARE(rows.at(2).m_device.m_quantity, QString("2.5")); - QCOMPARE(DeviceBomExport::toCsv(rows), DeviceBomExport::toCsv(DeviceBomExport::collect(project))); - } - - void emptyFolioFallsBackToPagePosition() - { - QETProject project; - auto *diagram = project.addNewDiagram(); - diagram->border_and_titleblock.setFolio(QString()); - diagram->border_and_titleblock.setFolioData(1, 1); - QVERIFY(addElement(project, diagram, "K1")); - const auto rows = DeviceBomExport::collect(project); - QCOMPARE(rows.size(), 1); - QCOMPARE(rows.first().m_page, QString("1")); - } - - void csvEscapingAndEncoding() - { - const auto csv = DeviceBomExport::toCsv({{sample(), "F-03"}}); - const QByteArray header("\xEF\xBB\xBF\"No\",\"Device tag\",\"Manufacturer\",\"Part number\"," - "\"Model\",\"Description\",\"Category\",\"Quantity\",\"Page\",\"Notes\"\r\n"); - QVERIFY(csv.startsWith(header)); - QVERIFY(csv.contains(sample().m_manufacturer.toUtf8())); - QVERIFY(csv.contains("\"001234\"")); - QVERIFY(!csv.contains("24 V DC")); - QVERIFY(!csv.contains("16 A")); - QVERIFY(csv.endsWith("\"2.5\",\"F-03\",\"Panel A, \"\"spare\"\"; check\nSecond line\"\r\n")); - QCOMPARE(DeviceBomExport::toCsv({}), header); - } - - void fileSuccessAndFailure() - { - QTemporaryDir temp; - QETProject project; - QString error = "old error"; - QVERIFY(!DeviceBomExport::writeCsv(project, temp.filePath("absent/bom.csv"), &error)); - QVERIFY(!error.isEmpty()); - const auto path = temp.filePath("bom.csv"); - QVERIFY(DeviceBomExport::writeCsv(project, path, &error)); - QVERIFY(error.isEmpty()); - QVERIFY(DeviceBomExport::writeCsv(project, path, &error)); - QFile file(path); - QVERIFY(file.open(QIODevice::ReadOnly)); - QCOMPARE(file.readAll(), DeviceBomExport::toCsv({})); - } - - void propertyEditorUndoRedo() - { - QETProject project; - auto *diagram = project.addNewDiagram(); - auto *element = addElement(project, diagram, "-K1"); - QVERIFY(element); - ElementInfoWidget editor(element); - const auto context = sample().toContext(); - const auto widgets = editor.findChildren(); - for (const QString &key : context.keys()) { - auto it = std::find_if(widgets.begin(), widgets.end(), [&key](ElementInfoPartWidget *widget) { - return widget->key() == key; - }); - QVERIFY2(it != widgets.end(), qPrintable(key)); - (*it)->setText(context.value(key).toString().replace('\n', ' ')); - } - const int undo_count = diagram->undoStack().count(); - editor.apply(); - QCOMPARE(element->elementInformations().value("model").toString(), QString("RX-24")); - QCOMPARE(diagram->undoStack().count(), undo_count + 1); - diagram->undoStack().undo(); - QVERIFY(element->elementInformations().value("model").toString().isEmpty()); - diagram->undoStack().redo(); - QCOMPARE(element->elementInformations().value("voltage_rating").toString(), QString("24 V DC")); - QCOMPARE(DeviceBomExport::collect(project).first().m_device.m_model, QString("RX-24")); - editor.resize(600, 750); - editor.show(); - QCoreApplication::processEvents(); - const QString artifacts = qEnvironmentVariable("QET_SMART_DEVICE_ARTIFACT_DIR"); - if (!artifacts.isEmpty()) { - QVERIFY(editor.grab().save(QDir(artifacts).filePath("properties.png"))); - } - } - - void existingDatabaseReports() - { - QETProject project; - auto *element = addElement(project, project.addNewDiagram(), "-K1"); - QVERIFY(element); - element->setElementInformations(sample().toContext()); - project.dataBase()->updateDB(); - auto query = project.dataBase()->newQuery(QStringLiteral( - "SELECT model,category,voltage_rating,current_rating,notes FROM element_nomenclature_view")); - QVERIFY2(query.exec(), qPrintable(query.lastError().text())); - QVERIFY(query.next()); - QCOMPARE(query.value(0).toString(), sample().m_model); - QCOMPARE(query.value(1).toString(), sample().m_category); - QCOMPARE(query.value(2).toString(), sample().m_voltage_rating); - QCOMPARE(query.value(3).toString(), sample().m_current_rating); - QCOMPARE(query.value(4).toString(), sample().m_notes); - } + private slots: + void metadataColumns(); + void defaultQueryAndCsv(); + void atomicWrite(); }; -QTEST_MAIN(SmartDeviceTest) +void SmartDeviceTest::metadataColumns() +{ + const auto columns = BomExport::defaultColumns(); + for (const QString &column : { + QStringLiteral("label"), QStringLiteral("manufacturer"), + QStringLiteral("manufacturer_reference"), QStringLiteral("model"), + QStringLiteral("description"), QStringLiteral("category"), + QStringLiteral("quantity"), QStringLiteral("voltage_rating"), + QStringLiteral("current_rating"), QStringLiteral("folio"), + QStringLiteral("notes")}) + { + QVERIFY2(columns.contains(column), qPrintable(column)); + } +} + +void SmartDeviceTest::defaultQueryAndCsv() +{ + const QString connection = QStringLiteral("smart-device-%1") + .arg(QUuid::createUuid().toString()); + { + auto db = QSqlDatabase::addDatabase(QStringLiteral("QSQLITE"), connection); + db.setDatabaseName(QStringLiteral(":memory:")); + QVERIFY2(db.open(), qPrintable(db.lastError().text())); + QSqlQuery setup(db); + QVERIFY(setup.exec(QStringLiteral( + "CREATE TABLE element_nomenclature_view (" + "label TEXT, designation TEXT, manufacturer TEXT, " + "manufacturer_reference TEXT, model TEXT, description TEXT, " + "category TEXT, quantity TEXT, voltage_rating TEXT, " + "current_rating TEXT, folio TEXT, notes TEXT, " + "element_type TEXT, diagram_position INTEGER, position INTEGER)"))); + + QSqlQuery insert(db); + insert.prepare(QStringLiteral( + "INSERT INTO element_nomenclature_view VALUES " + "(?, '', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)")); + auto add = [&insert](const QString &tag, const QString &type, int page, + int position, const QString &manufacturer) { + insert.bindValue(0, tag); + insert.bindValue(1, manufacturer); + insert.bindValue(2, QStringLiteral("0012")); + insert.bindValue(3, QStringLiteral("M-1")); + insert.bindValue(4, QStringLiteral("Power contactor")); + insert.bindValue(5, QStringLiteral("Control")); + insert.bindValue(6, QStringLiteral("1")); + insert.bindValue(7, QStringLiteral("24 V DC")); + insert.bindValue(8, QStringLiteral("16 A")); + insert.bindValue(9, QString::number(page)); + insert.bindValue(10, QStringLiteral("Quoted \"note\"\nnext line")); + insert.bindValue(11, type); + insert.bindValue(12, page); + insert.bindValue(13, position); + return insert.exec(); + }; + QVERIFY(add(QStringLiteral("-K2"), QStringLiteral("simple"), 2, 1, + QStringLiteral("日本電機"))); + QVERIFY(add(QStringLiteral("-K1"), QStringLiteral("master"), 1, 2, + QStringLiteral("Müller"))); + QVERIFY(add(QStringLiteral("-K1.1"), QStringLiteral("slave"), 1, 3, + QStringLiteral("Must not be exported"))); + QVERIFY(add(QStringLiteral("X1"), QStringLiteral("terminal"), 1, 4, + QStringLiteral("Must not be exported"))); + + QSqlQuery query(db); + QVERIFY2(query.exec(BomExport::defaultQuery()), + qPrintable(query.lastError().text())); + int rows = 0; + const auto csv = BomExport::toCsv( + query, BomExport::defaultColumns(), true, &rows); + QCOMPARE(rows, 2); + QVERIFY(csv.startsWith("\xEF\xBB\xBF\"label\";\"designation\";")); + QVERIFY(csv.contains(QStringLiteral("Müller").toUtf8())); + QVERIFY(csv.contains(QStringLiteral("日本電機").toUtf8())); + QVERIFY(csv.contains("\"Quoted \"\"note\"\"\nnext line\"")); + QVERIFY(!csv.contains("Must not be exported")); + QVERIFY(csv.indexOf("-K1") < csv.indexOf("-K2")); + } + QSqlDatabase::removeDatabase(connection); +} + +void SmartDeviceTest::atomicWrite() +{ + QTemporaryDir temporary; + QVERIFY(temporary.isValid()); + const auto path = temporary.filePath(QStringLiteral("bom.csv")); + const QByteArray csv("\xEF\xBB\xBF\"label\"\n"); + QString error = QStringLiteral("stale"); + QVERIFY(BomExport::writeCsv(path, csv, &error)); + QVERIFY(error.isEmpty()); + QFile file(path); + QVERIFY(file.open(QIODevice::ReadOnly)); + QCOMPARE(file.readAll(), csv); + QVERIFY(!BomExport::writeCsv( + temporary.filePath(QStringLiteral("missing/bom.csv")), csv, &error)); + QVERIFY(!error.isEmpty()); +} + +QTEST_GUILESS_MAIN(SmartDeviceTest) #include "tst_smart_device.moc" From 0b7197118a1ceaf1059b0c1b9e90f0aed382d864 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 12 Sep 2026 06:22:26 +1200 Subject: [PATCH 86/95] Fix three follow-on defects in the prefix lookup this PR just refactored Requested by @scorpio810 in review: an empty in the custom collection should cancel a company-collection prefix, not fall through to it. QXmlStreamReader::readElementText() returns a null QString for an empty element, and the caller's isNull() check treats that the same as "not found" -- distinguish the two so an explicit override actually overrides. Verified in a standalone harness against a synthetic override file, pretty-printed and minified. Two more while in the same function, both from the original bugtracker #671 analysis that this PR only partially addressed: - QString path[10] with an unbounded index becomes a QStringList. The deepest category in the shipped collection already needs 9 of the 10 slots; a custom collection can nest deeper, and overflow was writing QString objects past the end of a stack array (#671 item 3). - The common-collection lookup still concatenated commonElementsDir() + "10_electric/qet_labels.xml" directly. commonElementsDir() returns the configured path verbatim with no guaranteed trailing separator, so relocating the collection to a path without one silently mangles this into one word and the file is never found -- the single most-reported cause of "prefixes don't work" (#671 item 1, forum #2178/#2651). QDir::filePath() joins correctly either way; applied to all three lookups (common, custom, company). Also fixes a defect not in that original analysis: the token-matching loop in prefixFromLabelFile() advanced twice per matched element -- once explicitly after a match, once more unconditionally at the bottom of the loop -- which only produced the right result because a pretty-printed file inserts a whitespace Characters token between adjacent elements for the second advance to land on. A minified qet_labels.xml has no such token, so the second advance skips clean over the very element being searched for and the lookup silently finds nothing -- reproduced against the real shipped 10_electric/qet_labels.xml (returns "" instead of "K" for a plain coil, on every case tested, not just the inheritance one). A single `continue` after a handled match removes the double advance. Testing: extracted the exact functions as committed into a standalone Qt6 harness (outside the full QET build, which needs a dependency fetch this sandbox doesn't have) and ran them against the real shipped qet_labels.xml, pretty-printed and minified, covering a direct prefix, inherited-from-ancestor prefix, not-found, and the explicit-empty- override case -- 8/8, matching between formats, no regressions in the pretty-printed results. The QDir::filePath() fix was verified separately against both a trailing-slash and no-trailing-slash base path. Not yet built inside the actual application (pugixml and other generated headers aren't available standalone); the algorithm itself, which is where all four defects lived, is what was under test. --- sources/autoNum/assignvariables.cpp | 88 +++++++++++++++++++++-------- 1 file changed, 63 insertions(+), 25 deletions(-) diff --git a/sources/autoNum/assignvariables.cpp b/sources/autoNum/assignvariables.cpp index b39e1d361..1a13a0047 100644 --- a/sources/autoNum/assignvariables.cpp +++ b/sources/autoNum/assignvariables.cpp @@ -24,6 +24,7 @@ #include "../qetgraphicsitem/element.h" #include "../qetxml.h" #include "../qetproject.h" +#include #include #include #include @@ -705,11 +706,12 @@ namespace autonum /** @brief prefixFromLabelFile - Look up a prefix for @a path in the qet_labels.xml at @a filepath. + Look up a prefix for @a path (path[i] outermost, path[1] the + deepest directory) in the qet_labels.xml at @a filepath. @return the prefix, or a null QString if the file cannot be read or holds no matching entry. */ - static QString prefixFromLabelFile(const QString &filepath, const QString path[10], int i, int dirLevel) + static QString prefixFromLabelFile(const QString &filepath, const QStringList &path, int i, int dirLevel) { QFile file(filepath); if (!file.open(QFile::ReadOnly | QFile::Text)) @@ -728,7 +730,16 @@ namespace autonum for (int j = i ; j <= dirLevel ; ++j) { if (rxml.name().toString() == "prefix") { - return rxml.readElementText(); + //An empty is a deliberate override + //(cancel a company prefix from the custom + //collection) and must stop the search here. + //readElementText() returns a null QString for + //an empty element, not an empty one, so a + //null-vs-empty check is needed to tell "found, + //empty" apart from "not found" -- the caller + //treats isNull() as "keep looking". + const QString text = rxml.readElementText(); + return text.isNull() ? QString("") : text; } else { while (rxml.readNextStartElement() && rxml.name().toString() != "prefix") { rxml.skipCurrentElement(); @@ -737,6 +748,19 @@ namespace autonum } } } + //The readNext() above already advanced past the token + //that matched path[i] (or, when i reached 0, past + //whatever the search for left current on). + //Falling through to the unconditional readNext() below + //as well would advance a *second* time per match, which + //only happens to land back on the right token because a + //pretty-printed file inserts a whitespace-only + //Characters token between adjacent elements for it to + //consume. A minified qet_labels.xml has no such token, + //so that second advance skips clean over the very + //element the next loop iteration needs to see, and the + //lookup silently finds nothing. Skip it here instead. + continue; } rxml.readNext(); } @@ -756,42 +780,56 @@ namespace autonum if (!location.isProject()) return QString(); - QString path[10]; - int i = -1; + //Directory names from the element up to (not including) the + //collection root, outermost last -- path[dirLevel] is the + //top-level category, path[1] the element's immediate parent + //directory, path[0] the element's own file name (never matched + //against a category: the search below stops descending once it + //has matched path[1], the deepest real directory). An + //unbounded QStringList rather than a fixed-size array, because + //a custom collection can nest deeper than the shipped one -- + //see bugtracker #671 item 3. + QStringList path; ElementsLocation current_location = location; - int dirLevel = -1; - - //Add location name to path array - while((current_location.parent() != current_location) && (current_location.parent().fileName() != "import")) + while ((current_location.parent() != current_location) + && (current_location.parent().fileName() != "import")) { - i++; - path[i]=current_location.fileName(); + path << current_location.fileName(); current_location = current_location.parent(); - dirLevel++; } - //User Element without folder treatment - if (i == -1) - { - i = 0; - path[i]=current_location.fileName(); + //User element without folder treatment + if (path.isEmpty()) { + path << current_location.fileName(); current_location = current_location.parent(); - dirLevel = 0; } + const int dirLevel = path.size() - 1; if (current_location.fileName() == "10_electric") { + //commonElementsDir() -- unlike customElementsDir(), which + //normalises this itself -- returns whatever path the user + //configured verbatim, with no guaranteed trailing + //separator. Concatenating a suffix onto it directly used + //to silently mangle the path (and so the prefix lookup) + //for any install relocated to a directory without a + //trailing slash; QDir::filePath() joins them correctly + //either way. return prefixFromLabelFile( - QETApp::commonElementsDir() + "10_electric/qet_labels.xml", - path, i, dirLevel); + QDir(QETApp::commonElementsDir()).filePath( + QStringLiteral("10_electric/qet_labels.xml")), + path, dirLevel, dirLevel); } //Look in the custom collection first, then in the company //collection, so a user override wins over the shared one. - const QStringList candidates = { - QETApp::customElementsDir() + "qet_labels.xml", - QETApp::companyElementsDir() + "qet_labels.xml" + const QStringList candidate_dirs = { + QETApp::customElementsDir(), + QETApp::companyElementsDir() }; - for (const QString &candidate : candidates) { - const QString prefix = prefixFromLabelFile(candidate, path, i, dirLevel); + for (const QString &dir : candidate_dirs) { + const QString candidate = + QDir(dir).filePath(QStringLiteral("qet_labels.xml")); + const QString prefix = + prefixFromLabelFile(candidate, path, dirLevel, dirLevel); if (!prefix.isNull()) { return prefix; } From 7c0e867226313b1dd7ee257662b5c95b85f7a25d Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 12 Sep 2026 06:32:07 +1200 Subject: [PATCH 87/95] Rewrite element-prefix lookup for nesting and multi-tree common collections The remaining two defects from bugtracker #671's original analysis, which #686 knowingly didn't cover (see that PR's review thread and the comment on the now-closed #672). ## #671 item 5: the XML matching ignored nesting prefixFromLabelFile() was a flat token scan: it matched any whose name equalled the next path segment, with no check that the match was actually a *child* of the previous match. It gave correct results on the shipped 10_electric/qet_labels.xml only because that file's document order happens to line up with its hierarchy -- any file with a same-named category at the wrong nesting depth would silently return the wrong prefix. Reproduced with a synthetic file where a top-level sibling category happens to share a name with what should be an unmatched grandchild: the old (already re-verified-fixed-for-whitespace) lookup returns a prefix from a completely unrelated branch of the document; this rewrite correctly reports "not found". Fixed by replacing the QXmlStreamReader token walk with a QDomDocument walk that only ever considers a matched node's direct children (firstChildElement()/nextSiblingElement(), scoped to that node), which cannot cross into a same-named sibling subtree. This also makes the whitespace-dependence fixed in #686 moot for the same reason: DOM parsing doesn't distinguish pretty-printed from minified input to begin with. The inheritance rule ("if a directory has no prefix, use its parent's, and so on") and the empty--overrides-inheritance behaviour #686 added both carry over unchanged: a category's own child, even an empty one, always overrides whatever a shallower ancestor already provided; a category with no child at all leaves the inherited value untouched. ## #671 item 2: common-collection trees other than 10_electric The lookup only ever consulted commonElementsDir()/10_electric -- literally: `if (current_location.fileName() == "10_electric")`. The common collection ships four other top-level trees (20_logic, 30_hydraulic, 50_pneumatic, 60_energy); none of them could carry a qet_labels.xml at all, because nothing ever looked for one. Generalised to commonElementsDir()//qet_labels.xml for whichever top-level tree the element's path actually walks up to, tried first, then custom, then company -- each of the latter two tried against both a from-root layout (matching a custom/company file organised as a mirror of the common collection, tree name included) and a tree-relative one (matching a file scoped to just one tree), so existing custom files keep working either way. This is the same multi-candidate structure #686 already established for custom-then- company; it now also covers which common-collection tree to check. ## Testing Same constraint as #686: no working full build in this sandbox (missing generated headers/deps), so the exact functions as committed were extracted into a standalone Qt6 harness and run against the real shipped 10_electric/qet_labels.xml (pretty-printed and minified), a synthetic empty-prefix-override file, and the nesting-trap file above -- 9/9, including the three cases #686 already fixed (direct prefix, inherited prefix, not-found) staying correct, confirming this rewrite doesn't regress that work. Not exercised here (needs a real running QETApp / ElementsLocation, which the standalone harness can't stand up): the elementPrefixForLocation() candidate-list wiring itself -- collection_root computation, the from-root/tree-relative dual lookup, and the common-then-custom-then- company ordering. That code is mechanical and was reviewed carefully by hand, but it has not been run. --- sources/autoNum/assignvariables.cpp | 178 ++++++++++++++++------------ 1 file changed, 105 insertions(+), 73 deletions(-) diff --git a/sources/autoNum/assignvariables.cpp b/sources/autoNum/assignvariables.cpp index 1a13a0047..c8059bbf2 100644 --- a/sources/autoNum/assignvariables.cpp +++ b/sources/autoNum/assignvariables.cpp @@ -25,6 +25,7 @@ #include "../qetxml.h" #include "../qetproject.h" #include +#include #include #include #include @@ -706,65 +707,70 @@ namespace autonum /** @brief prefixFromLabelFile - Look up a prefix for @a path (path[i] outermost, path[1] the - deepest directory) in the qet_labels.xml at @a filepath. - @return the prefix, or a null QString if the file cannot be read - or holds no matching entry. + Look up a prefix for @a path (path[dirLevel] outermost, path[1] the + deepest directory; path[0], the element's own file name, is never + matched) in the qet_labels.xml at @a filepath. + + Descends through nested \ elements matching + path[dirLevel], path[dirLevel-1], ..., path[1] in turn, considering + only *direct* children at each step -- unlike a flat token scan, + this cannot be fooled by a same-named category living elsewhere in + the document at the wrong nesting depth (bugtracker #671 item 5). + + At each matched level, that category's own \ child -- even + an empty one -- overrides whatever a shallower ancestor already + provided, so an explicit empty \ cancels inheritance + rather than silently falling back to it (the behaviour requested in + PR #686 review). A category with no \ child at all leaves + the inherited value untouched, which is how a directory with no + prefix of its own comes to inherit its parent's, as the file's own + header comment documents. + + @return the prefix that applies, or a null QString if the file + cannot be read, is not well-formed, or does not describe this + path at all (as opposed to describing it with no prefix + anywhere along it, which is a non-null empty string). */ - static QString prefixFromLabelFile(const QString &filepath, const QStringList &path, int i, int dirLevel) + static QString prefixFromLabelFile(const QString &filepath, const QStringList &path, int dirLevel) { QFile file(filepath); if (!file.open(QFile::ReadOnly | QFile::Text)) return QString(); - QXmlStreamReader rxml; - rxml.setDevice(&file); - rxml.readNext(); + QDomDocument document; + if (!document.setContent(&file)) + return QString(); - while (!rxml.atEnd()) { - if (rxml.attributes().value("name").toString() == path[i]) { - rxml.readNext(); - i = i - 1; + QDomElement node = document.documentElement(); + if (node.isNull()) + return QString(); - if (i == 0) { - for (int j = i ; j <= dirLevel ; ++j) { - - if (rxml.name().toString() == "prefix") { - //An empty is a deliberate override - //(cancel a company prefix from the custom - //collection) and must stop the search here. - //readElementText() returns a null QString for - //an empty element, not an empty one, so a - //null-vs-empty check is needed to tell "found, - //empty" apart from "not found" -- the caller - //treats isNull() as "keep looking". - const QString text = rxml.readElementText(); - return text.isNull() ? QString("") : text; - } else { - while (rxml.readNextStartElement() && rxml.name().toString() != "prefix") { - rxml.skipCurrentElement(); - rxml.readNext(); - } - } - } - } - //The readNext() above already advanced past the token - //that matched path[i] (or, when i reached 0, past - //whatever the search for left current on). - //Falling through to the unconditional readNext() below - //as well would advance a *second* time per match, which - //only happens to land back on the right token because a - //pretty-printed file inserts a whitespace-only - //Characters token between adjacent elements for it to - //consume. A minified qet_labels.xml has no such token, - //so that second advance skips clean over the very - //element the next loop iteration needs to see, and the - //lookup silently finds nothing. Skip it here instead. - continue; + QString prefix; + for (int i = dirLevel ; i >= 1 ; --i) { + QDomElement child = node.firstChildElement(QStringLiteral("category")); + while (!child.isNull() + && child.attribute(QStringLiteral("name")) != path[i]) { + child = child.nextSiblingElement(QStringLiteral("category")); + } + if (child.isNull()) + return QString(); + node = child; + + const QDomElement own = node.firstChildElement(QStringLiteral("prefix")); + if (!own.isNull()) { + //readElementText()'s null-vs-empty distinction that PR + //#686 needed for the old QXmlStreamReader-based lookup + //has a QDomElement equivalent: text() on an empty + //element can itself come back null depending on how the + //XML was written, so the same explicit fallback applies + //-- an empty QString here means "found, deliberately + //blank", not "not found". + prefix = own.text(); + if (prefix.isNull()) + prefix = QString(""); } - rxml.readNext(); } - return QString(); + return prefix; } /** @@ -784,11 +790,11 @@ namespace autonum //collection root, outermost last -- path[dirLevel] is the //top-level category, path[1] the element's immediate parent //directory, path[0] the element's own file name (never matched - //against a category: the search below stops descending once it - //has matched path[1], the deepest real directory). An - //unbounded QStringList rather than a fixed-size array, because - //a custom collection can nest deeper than the shipped one -- - //see bugtracker #671 item 3. + //against a category: the search stops descending once it has + //matched path[1], the deepest real directory). An unbounded + //QStringList rather than a fixed-size array, because a custom + //collection can nest deeper than the shipped one -- see + //bugtracker #671 item 3. QStringList path; ElementsLocation current_location = location; while ((current_location.parent() != current_location) @@ -803,24 +809,48 @@ namespace autonum current_location = current_location.parent(); } const int dirLevel = path.size() - 1; + //Name of the top-level tree the element's path was found + //under, e.g. "10_electric" -- or, for a custom/company + //collection not organised that way, whatever its top-level + //folder happens to be called. + const QString collection_root = current_location.fileName(); - if (current_location.fileName() == "10_electric") { - //commonElementsDir() -- unlike customElementsDir(), which - //normalises this itself -- returns whatever path the user - //configured verbatim, with no guaranteed trailing - //separator. Concatenating a suffix onto it directly used - //to silently mangle the path (and so the prefix lookup) - //for any install relocated to a directory without a - //trailing slash; QDir::filePath() joins them correctly - //either way. - return prefixFromLabelFile( - QDir(QETApp::commonElementsDir()).filePath( - QStringLiteral("10_electric/qet_labels.xml")), - path, dirLevel, dirLevel); + //Every top-level common-collection tree (10_electric, + //20_logic, 30_hydraulic, ...) may carry its own + //qet_labels.xml, with categories relative to that tree, the + //same way 10_electric/qet_labels.xml already does -- not just + //10_electric, which is all the hardcoded check this replaces + //used to allow (bugtracker #671 item 2). commonElementsDir() + //-- unlike customElementsDir(), which normalises this itself + //-- returns whatever path the user configured verbatim, with + //no guaranteed trailing separator; concatenating a suffix onto + //it directly used to silently mangle the path (and so the + //prefix lookup) for any install relocated to a directory + //without a trailing slash (#671 item 1). QDir::filePath() + //joins correctly either way. + { + const QString common_file = QDir(QETApp::commonElementsDir()) + .filePath(collection_root + QStringLiteral("/qet_labels.xml")); + const QString prefix = prefixFromLabelFile(common_file, path, dirLevel); + if (!prefix.isNull()) { + return prefix; + } } - //Look in the custom collection first, then in the company - //collection, so a user override wins over the shared one. + /* Which collection an element actually came from is not + * recoverable post-import (addElement() strips the protocol), + * so custom and company labels files are tried against two + * possible layouts: with the collection's top-level tree name + * folded into the path (a custom/company file organised as a + * mirror of the common collection, tree name included) and + * without it (a file scoped to just this one tree, matching + * how the common collection's own files are written). Custom + * is tried before company, so a user override wins over a + * shared one. + */ + QStringList path_from_root = path; + path_from_root << collection_root; + const QStringList candidate_dirs = { QETApp::customElementsDir(), QETApp::companyElementsDir() @@ -828,10 +858,12 @@ namespace autonum for (const QString &dir : candidate_dirs) { const QString candidate = QDir(dir).filePath(QStringLiteral("qet_labels.xml")); - const QString prefix = - prefixFromLabelFile(candidate, path, dirLevel, dirLevel); - if (!prefix.isNull()) { - return prefix; + for (const QStringList &segments : {path_from_root, path}) { + const QString prefix = prefixFromLabelFile( + candidate, segments, segments.size() - 1); + if (!prefix.isNull()) { + return prefix; + } } } return QString(); From 2c88f78f6911f8ee805a549ac51aae21923793f3 Mon Sep 17 00:00:00 2001 From: Laurent Trinques Date: Sat, 12 Sep 2026 01:13:30 +0200 Subject: [PATCH 88/95] Add new Shelly example Single-Phase And Three-Phase Designs --- examples/2612_ats_singlephase.qet | 7070 +++++++++++++++++++++++++++++ 1 file changed, 7070 insertions(+) create mode 100644 examples/2612_ats_singlephase.qet diff --git a/examples/2612_ats_singlephase.qet b/examples/2612_ats_singlephase.qet new file mode 100644 index 000000000..d4acf817a --- /dev/null +++ b/examples/2612_ats_singlephase.qet @@ -0,0 +1,7070 @@ + + + + + + + + + + + + + + + + + + + + + + +Created by potrace 1.10, written by Peter Selinger 2001-2011 + + + + + + + + + + + + + + + + + + + + + %date + + + + + + %author + + + + + + + + + + + + + + + + %projet + + + + + + %client + + + + + + + + + + + + + + + + + + + + + %objet + + + + + + + + + + + + + + + + + + + + + %model + + + + + + + + + %date + + + + + + NAME + + + + + APPD + + + + + REVISION + + + + + %revision + + + + + %title + + + + + + + + + + CHKD + + + + + APPD + + + + + %label1 + + + + + %filename + + + + + + %{folio-id}/%{folio-total} + + + + + + %filename + + + + + + + + + %label2 + + + + + %label3 + + + + + + + 06-06-2026 + 2612_ATS_SinglePhase + 2026-06-06 + 09:39 + 6/6/26 + /home/orlin-dimitrov/Documents/git/orlin.dimitrov/cabinets-solutions/Articles/2026/sa_herholds_June/usecases/en-EN/01-intelligent-load-management/2612_ATS_SinglePhase/2612_ATS_SinglePhase.qet + + + + + + + + + + + + + + + + + + Single Phase ATS Schematic + + Single Phase + ATS Cabinet + + 1.00 + + 1.00 + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + K4 + label + + + + + + + + + + + + + + + + + + K2 + K2 + + + + A2 + + + A1 + + + K2 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + QF4 + QF4 + + + + QF4 + label + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + K3 + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + + + QF2 + QF2 + + + + QF2 + label + + + + + + + + + + + + + + + K3 + K3 + + + + A2 + + + A1 + + + K3 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + QF1 + QF1 + + + + QF1 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + K1 + K1 + + + + A2 + + + A1 + + + K1 + label + + + + + + + + + + + + + + + + + + + + + + + Shelly Europe Ltd. + U2 + https://shelly.com + 1 + DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + Shelly Pro Modbus Add-on + Shelly Pro Modbus Add-on + U2 + + + + U2 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + QF2 + QF2 + + + + QF2 + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + QF1 + QF1 + + + + QF1 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + Q3 + Q3 + + + + Q3 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + Shelly Europe Ltd. + U1 + https://shelly.com + 1 + 2-phase, 2-channel relay with potential-free outputs (dry contacts), supporting a total device maximum of 25A for professional lights and appliance automation. + Shelly Pro 2 + Shelly Pro 2 + U1 + + + + U1 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + K4 + K4 + + + + A2 + + + A1 + + + K4 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + Shelly Europe Ltd. + U3 + https://shelly.com + 1 + Next generation DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + Shelly Pro 3EM 120A + Shelly Pro 3EM 120A + U3 + + + + U3 + label + + + + + + + + + + + + Q3 + Q3 + + + + Q3 + label + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ATS Cabinet + + 1.00 + Houshold + ATS + + + 1.00 + + + + + + + + + + + + + + + + Shelly Europe + + https://shelly.com + 1 + DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + Shelly Pro 3EM 120A + + Shelly Pro 3EM 120A + + + + + + + label + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + + + T1 + T1 + + + + T1 + label + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + + + + + + + + + + + + + + + Shelly Europe Ltd. + + https://shelly.com + 1 + + Shelly Pro Sensor Add-on + Shelly Pro Sensor Add-on + + + Shelly Pro Sensor Add-on + + + + + + + label + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + + + + + + + + + + + Alterco Robotics + + shelly.cloud + 1 + + WiFi 2*Relay with dry contacts + Shelly Pro 2 + + + Shelly Pro 2 + + + + + + + label + + + + + + + + + + + T2 + T2 + + + + T2 + label + + + + + + + + + + + T3 + T3 + + + + T3 + label + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + WAGO + + DIN-Rail TS35; slotted; 100 mm + 210-504 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Three Phase ATS + + Home + Three Phase ATS + 1.00 + + Three Phase ATS + + + + + + + + + + + + + + + + + + + + + + K4 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + Shelly Europe Ltd. + U2 + https://shelly.com + 1 + DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + Shelly Pro Modbus Add-on + Shelly Pro Modbus Add-on + U2 + + + + U2 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + Shelly Europe Ltd. + U1 + https://shelly.com + 1 + 2-phase, 2-channel relay with potential-free outputs (dry contacts), supporting a total device maximum of 25A for professional lights and appliance automation. + Shelly Pro 2 + Shelly Pro 2 + U1 + + + + U1 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + K6 + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + K5 + K5 + + + + A2 + + + A1 + + + K5 + label + + + + + + + + + + + + + + + K8 + K8 + + + + A2 + + + A1 + + + K8 + label + + + + + + + + + + + + + + + + + + K2 + K2 + + + + A2 + + + A1 + + + K2 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + QF1 + QF1 + + + + QF1 + label + + + + + + + + + + + + + + + + QF3 + QF3 + + + + QF3 + label + + + + + + + + + + + + + + + K4 + K4 + + + + A2 + + + A1 + + + K4 + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + K3 + K3 + + + + A2 + + + A1 + + + K3 + label + + + + + + + + + + + + + + + K7 + K7 + + + + A2 + + + A1 + + + K7 + label + + + + + + + + + + + + + + + + + + QF1 + QF1 + + + + QF1 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + QF3 + QF3 + + + + QF3 + label + + + + + + + + + + + + + + + + + + + + + + K8 + label + + + + + + + + + + + + + + + + + + QF2 + QF2 + + + + QF2 + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + K6 + K6 + + + + A2 + + + A1 + + + K6 + label + + + + + + + + + + + + + + + + + + + + + + K2 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + QF4 + QF4 + + + + QF4 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + K3 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + K7 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + K5 + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + K1 + K1 + + + + A2 + + + A1 + + + K1 + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + + + + + + + _ + + + + label + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + QF2 + QF2 + + + + QF2 + label + + + + + + + + + + + + + + + + + + + + + + K1 + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Elementi importati + Elementos importados + Elementen geïmporteerd + インバートされた要素 + Zavedené prvky + Elementy importowane + Importerede elementer + Importierte elemente + Импортированные элементы + İthal öğeler + elementos importados + Éléments importés + Elements importats + Εισηγμένα στοιχεία + Uvezeni elementi + Uvoženi elementi + Imported elements + Elemente importate + Імпортовані елементи + + + + Electric + Ηλεκτρικά + Elettrica + Электротехника + Electrique + Elektrotechnika + Elektrik + Elektrotechniek + 電気 + Elektrisk + Elektrotechnika + Eléctrica + + + + All-pole + Multifilare + Πολυγραμμικό + Многополюсные + Multifilaire + Schematy wieloliniowe + Allpolig + Veel polig + 複線 + Flere ledere + Többvonalas szimbólumok + Vícežilový + Multifilar + + + + Connections + Połączenia + Collegamenti + Forbindelser + Conexiones + Connections + Соединения + 接続 + Spojení + Ενώσεις + Verbindingen + Csatlakozások + Verbindungen + + + + + + Epissure + Spojka + Empalme + Połączenie 3 + Spaziatura + Splice + Spleiß + Egyesítő három vezetékhez + Сращивание + + + + + + + label + + + + + + + + + + + + Relays, contactors and contacts + Relè, contattori e contatti + Ηλεκτρονόμοι και επαφές + Реле, пускатели и контакты + Relais, contacteurs et contacts + Przekaźniki i styczniki + Relais, Schütze und Kontakte + Relais, contactoren en contacten + 継電器、接触器、接点 + Relæer, kontaktorer og kontakter + Relék, kontaktorok és érintkezők + Relé, stykače a kontakty + Relevadores, contactores y contactos + + + + Contacts with cross referencing + Contatti con riferimenti incrociati + Επαφές με παραπομπές + Контакты с перекрестными ссылками + Contacts avec référence croisée + Kontakte mit Querverweis + Zestyki (automatyczne oznaczenia) + Contacten met kruisreferentie + Kontaker med krydsreference + Kontakty s křížovými odkazy + Contactos con referencia cruzada + + + + Auxiliary + Βοηθητικές επαφές + Contatti ausiliari + Внешние + Auxilliaires + Hilfsglieder + Zestyki pomocnicze + Hulpcontacten + Hjælpe kontakter + Pomocné kontakty + Contactos auxiliares + + + + + + مُلامس بسيط (NO) + Schliesser + Проктой контакт (НР) + Contacto simples (NO) + Απλή επαφή, ανοικτή + Simple contact + Contatto semplice (NO) + Contact simple + Zestyk zwierny + Contactor simple + Spínací kontakt + contact enkel + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + NO + 1 + simple + + + + + + + + + + + + + + + + مُلامس بسيط (NC) + Öffner + Проктой контакт (НЗ) + Contacto simples (NC) + Απλή επαφή, κλειστή + Simple contact (NC) + Contatto semplice (NC) + Contact simple (NF) + Zestyk rozwierny + Contactor simple (NC) + Rozpínací kontakt + contact normaal gesloten enkel simpel (NC) + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + NC + 1 + simple + + + + + + + + + + + + + + + + + + طرفيات توصيل + Terminals and terminal strips + Złącza i zaciski + Terminali + Klemmer og klemmerækker + Terminais + Terminales + Bornes et borniers + Клеммы и клеммники + 端子と端子台 + Svorky + Ακροδέκτες και σειρές ακροδεκτών + Klemmenlijst + Sorkapcsok + Klemmen und Klemmleisten + + + + + + طرف نهائي + Endklemme + Клеммник + Terminal de fim + Terminal block + Terminale di fine + Borne finale + Zacisk + Punto de unión + Klem eind + Koncová svorka + Sorkapocs + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + Fuses and protective gears + Łączniki i zabezpieczenia + Fusibili e protezioni + Sikringer og beskyttelsesudstyr + Fusibles y protecciones + Fusibles et protections + Предохранители и элементы защиты + ヒューズと保護装置 + Ασφάλειες και εξαρτήματα προστασίας + Pojistky a ochranná zařízení + Zekeringen en beveiligingen + Biztosítékok és védelmi eszközök + Sicherungen und Schutzeinrichtungen + + + + قواطع + Circuit-breakers + Wyłączniki + Relè termici + Afbryder + Disjuntores + Disyuntores + Disjoncteurs + Выключатели + Jističe + Αυτόματοι διακόπτες + Lastscheiders + Kismegszakítók + Last- und Leitungsschutzschalter + + + + + + Čtyřpólový jistič + قاطع رباعي القطبية + Circuit-breaker 3p + Wyłącznik + Disyuntor termico magnetico en 3P + Disjoncteur tretapolaire + Leitungsschutzschalter 3P + Kismegszakító 3 pólusú + Lastscheider 3 + Int. Aut. Magneto-termico 3P + + + protection + + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + Dvoupólový jistič 2 póly chránící + قطب ثنائي القطبية قطبين محميين + Circuit-breaker + Wyłącznik + Disyuntor termico magnetico en 2P + Disjoncteur bipolaire 2 poles proteges + Leitungsschutzschalter 2P + Kismegszakító 2 pólusú + Lastscheider 2 + Int. Aut. Magneto-termico 2P + + + protection + + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + قاطع رباعي + Lastschalter 4P + Circuit-breaker + Sezionatore 4P + Disjoncteur Tetra + Wyłącznik + Disyuntor 4P + Terheléskapcsoló 4 pólusú + Lastscheider 4 + Čtyřpólový jistič + + + protection + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Disjoncteur tripolaire + neutre + Kismegszakító 3 + N pólusú + Wyłącznik + Leitungsschutzschalter LS 3P+N + Trojpólový jistič 3p+N + قاطع ثلاثي القطبية + خط محايد + Disyuntor termico magnetico en polos 3P+N + Int. Aut. Magneto-termico 3P+N + Lastscheider 3+N + Circuit-breaker + + + protection + + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + Transformadores y fuentes de potencia + Μετασχηματιστές και παροχές ισχύος + Transformateurs et alimentations + Transformer og strømforsyninger + Трансформаторы и источники питания + Trasformatori e alimentatori + Transformers and power supplies + Transformatoren und Versorgungen + 変圧器と電源 + Trasformátory a proudové zdroje + Transformatoren en Voedingen + Transformatory i zasilacze + + + + Fuente de poder ininterrumpida + Αδιάλειπτες παροχές ισχύος + Alimentations sans interruption + Nødstrømsforsyning + Источники бесперебойного питания + Alimentazione senza interruzione + Uninterruptible power supplies + Unterbrechungsfreie Stromversorgungen + Záložní napájecí zdroje + Voeding niet onderbreekbaar + Zasilacze awaryjne + + + + + + UPS + UPS + UPS + UPS + UPS + UPS + USV + UPS + + + coil + + + + Author: RDS for QelectroTech + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + Obwody sterownicze + Signalering en bediening + Značení a příkazy + 信号と操作 + Segnalazione e comando + Signaling and operating + Сигнализация и управление + Señalización y comando + Melde- und Bedieneinrichtungen + Σήμανση και χειρισμός + Signalétique et commande + + + + Wskaźniki świetlne + Světelná signalizace + Segnalazione ottica + Optical signaling devices + Оптическая сигнализация + Optische Meldeeinrichtungen + Dispositivos de señalamiento óptico + Συσκευές οπτικής σήμανσης + Signalements optiques + + + + + + مُؤشّر ضوئي لمفتاح ضاغط + Μπουτόν, φωτειζόμενο με LED + LED of an illuminated push-button + LED en un pulsador iluminado + Meldeleuchte eines Drucktasters + Spia luminosa a LED + Voyant d'un bouton poussoir lumineux + Łącznik przyciskowy podświetlony + Prosvětlené tlačítko + lamp van drukknop + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + + + + + + + + Γραφικά + Gráficos + Graphisme + Grafik + Графика + Grafica + Graphics + Grafik + グラフィック + Označení + Grafisch + Oznaczenia + + + + Vignettes pour mise en armoire + Miniature per schemi di montaggio + Thumbnails for assembly plan + Aufbauplanzeichnungen + 組立図用サムネイル + Náhledy montážního plánu + Opbouwtekeningen + Budowa rozdzielnic i sterownic + + + + Vignettes pour plaque de montage + Miniature apparecchi guida DIN + Thumbnails for mounting plate + Miniaturansichten für Montageplatte + Montážní schémata + Montageplaat miniaturen + Schemat montażowy + + + + Graphics + Grafik + + + + Shelly Pro + Shelly Pro + + + + + + Shelly Pro 2 + Shelly Pro 2 + Shelly Pro 2 + + + Alterco Robotics + + + Shelly Pro 2 + Shelly Pro 2 + + WiFi 2*Relay with dry contacts + + shelly.cloud + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Κατασκευαστές υλικού + Articulos de fabricantes + Herstellerartikel + Tovární díly + 製品 + Marchi produttori + Manufacturers articles + Producent produkter + Articles constructeurs + База изделий производителей + Urządzenia producentów + + + + WAGO + WAGO ELWAG + WAGO Sverige + WAGO Elektro + WAGO Denmark + WAGO Contact + WAGO Nederland + WAGO Norge + WAGO Electronic + WAGO Hungá¡ria KFT + WAGO Contact + WAGO Limited + + + + Front-Ansichten + Náhled + Vue de face + Front-View + + + + Terminals + Borniers + Terminals + Terminals + Terminals + Reihenklemmen + Svorky + Terminals + Terminals + Terminals + + + + Series 2006 + Series 2006 + Series 2006 + Series 2006 + Series 2006 + Serie 2006 + Řada 2006 + Series 2006 + Series 2006 + Series 2006 + + + + + 2006-1204 2-L bleu + 2006-1204 2-L blau + 2006-1204 2-L modrá + 2006-1204 2-L blue + + + sectional + generic + + + WAGO + 2006-1204 + 6mm² 2L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2006-1207 2-L grün-gelb + 2006-1207 2-L vert-ambre + 2006-1207 2-L green-yellow + 2006-1207 2-L žluto-zelená + + + sectional + generic + + + WAGO + 2006-1207 + 6mm² 2L PE + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2006-1201 2-L gray + 2006-1201 2-L grau + 2006-1201 2-L gray + 2006-1201 2-L šedá + + + sectional + generic + + + WAGO + 2006-1201 + 6mm² 2L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2006-1291 term.-plate orange + 2006-1291 Abschluss orange + 2006-1291 term.-plate orange + 2006-1291 Koncová deska oranžová + + + WAGO + 2006-1291 + 6mm² 2L / Abschlussplatte / Endplate + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + Series 2204 + Series 2204 + Series 2204 + Series 2204 + Series 2204 + Řada 2204 + Series 2204 + Serie 2204 + Series 2204 + Series 2204 + + + + + 2204-1207 + 2204-1207 + 2204-1207 + 2204-1207 + + + sectional + generic + + + WAGO + 2204-1207 + 4mm² 2L PE + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2204-1201 + 2204-1201 + 2204-1201 + 2204-1201 + + + sectional + generic + + + WAGO + 2204-1201 + 4mm² 2L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2204-1204 + 2204-1204 + 2204-1204 + 2204-1204 + + + sectional + generic + + + WAGO + 2204-1204 + 4mm² 2L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2004-1292 + 2004-1292 + 2004-1292 + 2004-1292 + + + WAGO + 2004-1292 + 4mm² 2L / Abschlussplatte / Endplate + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + Series 2000 + Series 2000 + Series 2000 + Series 2000 + Series 2000 + Řada 2000 + Series 2000 + Serie 2000 + Series 2000 + Series 2000 + + + + + 2000-1202 + 2000-1202 + 2000-1202 + 2000-1202 + + + sectional + generic + + + WAGO + 2000-1202 + 1mm² 2L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2000-1301 + 2000-1301 + 2000-1301 + 2000-1301 + + + sectional + generic + + + 2000-1301 + WAGO + 1mm² 3L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2000-1201 + 2000-1201 + 2000-1201 + 2000-1201 + + + sectional + generic + + + 2000-1201 + WAGO + 1mm² 2L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + 2000-1304 + 2000-1304 + 2000-1304 + 2000-1304 + + + sectional + generic + + + WAGO + 2000-1304 + 1mm² 3L + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + 2000-1392 + 2000-1392 + 2000-1392 + 2000-1392 + + + generic + generic + + + 2000-1392 + WAGO + 1mm² 3L / Abschlussplatte / Endplate + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + 2000-1292 + 2000-1292 + 2000-1292 + 2000-1292 + + + generic + generic + + + 2000-1292 + WAGO + 1mm² 2L / Abschlussplatte / Endplate + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + various accessories + divers accessoires + diverses Zubehör + různé doplňky + + + + Mounting rails + Rail de montage + Tragschienen + Montážní lišta + + + + + Tragschiene TS35; 100 mm (gelocht) + DIN-Rail TS35; slotted; 100 mm + DIN-Rail TS35; slotted; 100 mm + DIN-Rail TS35; slotted; 100 mm + + + WAGO + 210-504 + DIN-Rail TS35; slotted; 100 mm + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + DIN-Rail TS35 200 mm + DIN-Rail TS35 200 mm + DIN-Rail TS35 200 mm + Tragschiene TS35 200 mm + + + WAGO + 210-505 + DIN-Rail TS35 200 mm + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + DIN-Rail TS35; slotted; 225 mm + DIN-Rail TS35; slotted; 225 mm + DIN-Rail TS35; slotted; 225 mm + Tragschiene TS35; 225 mm (gelocht) + + + WAGO + 210-504 + DIN-Rail TS35; slotted; 225 mm + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + DIN-Rail TS35; slotted; 300 mm + DIN-Rail TS35; slotted; 300 mm + Tragschiene TS35; 300 mm (gelocht) + DIN-Rail TS35; slotted; 300 mm + + + WAGO + 210-504 + DIN-Rail TS35; slotted; 300 mm + + Author: plc-user for QElectroTech +License:see https://qelectrotech.org/wiki_new/doc/elements_license + + + + + + + + + + + + + + + + + + + + + + + + + EN 60617 + 電気用図記号 (JIS C 0617 / IEC 60617) + DS/IEC 60617 + IEC 60617 + IEC 60617 + DIN EN 60617 + EN 60617 + + + + 08- Měřicí přístroje, zdroje světla a signalizační zařízení + 08- 計器,ランプ及び信号装置 + 08- Måleinstrumenter, lamper og signaludstyr + 08- Measuring instruments, lamps and signalling devices + 08- Dispositivos de medición, lámparas y dispositivos de señalización + 08- Meß-, Melde- und Signaleinrichtungen + 08- Appareils de mesure, lampes et dispositifs de siglalisation + + + + 10- Zdroje světla a signalizační zařízení + 10- ランプ及び信号報知装置 + 10- Lamps and signalling devices + 10- Leuchtmelder und Signaleinrichtungen + 10- Lampes et dispositifs de signalisation + + + + + + Leuchtmelder, versorgt durch eingebauten +Transformator + Lampe de signalisation alimentée par +transformateur incorporé + Kontrolka s vestavěným transformátorem + Indicator lamp energized by a built-in transformer + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + + + + + + + + インバートされた要素 + Importierte elemente + Імпортовані елементи + Εισηγμένα στοιχεία + Importerede elementer + Uvoženi elementi + elementos importados + Elementen geïmporteerd + Zavedené prvky + Импортированные элементы + Elementy importowane + Elemente importate + Éléments importés + İthal öğeler + Uvezeni elementi + Elements importats + Elementos importados + Elementi importati + Imported elements + + + + Electric + Ηλεκτρικά + Elettrica + Электротехника + Electrique + Elektrik + Elektrotechnika + Elektrotechniek + 電気 + Elektrisk + Elektrotechnika + Eléctrica + + + + All-pole + Πολυγραμμικό + Multifilare + Многополюсные + Multifilaire + Schematy wieloliniowe + Allpolig + Veel polig + 複線 + Flere ledere + Többvonalas szimbólumok + Vícežilový + Multifilar + + + + Relays, contactors and contacts + Ηλεκτρονόμοι και επαφές + Relè, contattori e contatti + Реле, пускатели и контакты + Relais, contacteurs et contacts + Relais, Schütze und Kontakte + Przekaźniki i styczniki + Relais, contactoren en contacten + 継電器、接触器、接点 + Relæer, kontaktorer og kontakter + Relék, kontaktorok és érintkezők + Relé, stykače a kontakty + Relevadores, contactores y contactos + + + + コイル + tekercs + Spule + σπείρα + spole + لفه + Spole + tuljava + bobina + ороомог + spoel + cívka + катушка + cewka + bobina + bobine + zavojnica + bobin + bobina + bobina + калем + bobina + coil + + + + + + ملف + Spule + Обмотка + Πηνίο + Coil + Bobina + Bobine + Cewka + Bobina + Cívka relé + Spoel + Tekercs + Relais spoel (algemeen) + + + coil + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + + + + + Μετατροπείς και αντιστροφείς + Convertidores e invertidores + Convertisseurs et variateurs + Преобразователи + Convertitori e inverter + Converters and inverters + Umformer und Umrichter + 変換器とインバータ + Měniče a střídače + Omzetters en Omkeerders + Przetworniki i przekształtniki + + + + Μετασχηματιστές Έντασης + Transformadores de corriente + Transformateurs de courant + Трансформаторы тока + Trasformatori di corrente + Current transformers + Stromwandler + Transformátory proudu + Transformator stroom + Przekładniki + + + + + + Current transformer, pulse transformer + Stromwandler, Impulswandler + Transformateur de courant, transformateur d'impulsion + Trasformatore di corrente o d'impulso + Przekładnik (forma 2) + Proudový nebo impulzní transformátor + Stroomtrafo + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + + + + + + + + + + + + + + + + インバートされた要素 + Elementen geïmporteerd + İthal öğeler + Importierte elemente + Імпортовані елементи + Uvezeni elementi + Uvoženi elementi + elementos importados + Éléments importés + Εισηγμένα στοιχεία + Zavedené prvky + Elementos importados + Imported elements + Importerede elementer + Elemente importate + Elements importats + Импортированные элементы + Elementi importati + Elementy importowane + + + + + + Wyłącznik + Dvoupólový jistič 1 pól chránící + Disyuntor termico magnetico en polo P+N + Circuit-breaker + Int. Aut. Magneto-termico 1P+N + Kismegszakító 1 + N pólusú + Lastscheider 1P+N + قاطع ثنائي القطبية - 1 قطب محمي + Leitungsschutzschalter 1P+N + Disjoncteur bipolaire 1 pole protege + + + protection + + + Author: The QElectroTech team +License: see http://qelectrotech.org/wiki/doc/elements_license + + + + + + label + + + + + + + + + + + + + + + + + + + Shelly Symbols + + + + Production + + + + + + Shelly Pro 2 + Shelly Pro 2 + Shelly Pro 2 + + + https://shelly.com + + + Shelly Pro 2 + 2-phase, 2-channel relay with potential-free outputs (dry contacts), supporting a total device maximum of 25A for professional lights and appliance automation. + Shelly Pro 2 + + + + Shelly Europe Ltd. + 1 + + Shelly Europe Ltd. + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Shelly Pro Sensor Add-on + Shelly Pro Sensor Add-on + Shelly Pro Sensor Add-on + + + + + 1 + Shelly Pro Modbus Add-on + + Shelly Europe Ltd. + DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + https://shelly.com + Shelly Pro Modbus Add-on + + + + Shelly Europe Ltd. + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Shelly Pro 3EM 120A + Shelly Pro 3EM 120A + Shelly Pro 3EM 120A + + + https://shelly.com + + + Shelly Pro 3EM 120A + Next generation DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + Shelly Pro 3EM 120A + + + + Shelly Europe Ltd. + 1 + + Shelly Europe Ltd. + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Shelly Mounting + + + + Production + + + + + + Shelly Pro 1 + Shelly Pro 1 + Shelly Pro 1 + + + + Shelly Europe + + Shelly Pro 1 + + + Shelly Pro 1 + + 1-phase, 1-channel relay with potential-free outputs (dry contacts), supporting up to 16A for professional lights and appliance automation for residential or commercial use. + 1 + https://shelly.com + + Shelly Europe Ltd. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + Shelly Pro 4PM + Shelly Pro 4PM + Shelly Pro 4PM + + + 1 + + + Professional 4-channel DIN rail smart switch with power metering, supporting up to 16A per channel. Control and monitor the consumption for each channel separately. + Shelly Pro 4PM + + https://shelly.com + + + Shelly Europe + Shelly Pro 4PM + + Shelly Europe Ltd. + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Shelly Current Transformer + Shelly Current Transformer + Shelly Current Transformer + + + + + + + + + + + + + + label + + + + + + + + + + Shelly Pro EM-50 + Shelly Pro EM-50 + Shelly Pro EM-50 + + + DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + + 1 + + + Shelly Pro 3EM 120A + Shelly Europe + + + Shelly Pro 3EM 120A + https://shelly.com + + Shelly Europe Ltd. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Shelly Pro 3EM 120A + Shelly Pro 3EM 120A + Shelly Pro 3EM 120A + + + Shelly Pro 3EM 120A + 1 + Shelly Pro 3EM 120A + + DIN rail mountable single or three-phase energy meter with a 3x120A, 3-phase current transformers. + + + Shelly Europe + + + https://shelly.com + + Shelly Europe Ltd. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Shelly Pro Sensor Add-on + Shelly Pro Sensor Add-on + Shelly Pro Sensor Add-on + + + Shelly Pro Sensor Add-on + Shelly Europe Ltd. + + + + https://shelly.com + + Shelly Pro Sensor Add-on + + 1 + Shelly Pro Sensor Add-on + + Shelly Europe Ltd. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 956836458a77b257e5db070c1c6f56b4a66f0bae Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 12 Sep 2026 13:50:24 +1200 Subject: [PATCH 89/95] Rebuild the project database once per load instead of once per table model ProjectDBModel::setQuery() calls projectDataBase::updateDB(), which drops and repopulates every table in the database. The rebuild does not depend on the query, so each table model that queries the database while a project is being read triggers another complete repopulate of the same content. Opening a 100 folio project ran updateDB() 26 times, 9.9 s of a 15.7 s load. Two changes, because the first alone is not enough: setUpdateBlocked() lets a bulk operation suppress the rebuild and do it once when it is done. readProjectXml() already wrapped the load in blockSignals(true) "to avoid hundreds of unnecessary emitted signal", but that suppresses only the signal, not the work it announces; this extends the same intent to the work. Both early returns in readProjectXml() sit before the block, so no path leaves the database permanently blocked. Further rebuilds are triggered after readProjectXml() returns, where the load phase timers cannot see them -- with only the block in place updateDB() still ran 5 times on examples/industrial.qet. So the database now also tracks whether anything has changed since the last rebuild, and skips repopulating when nothing has. dataBaseUpdated() is still emitted in that case: callers and models rely on it to refresh, and what they read back is the same either way. Every method of the class that writes rows marks the flag; from outside, the database is reachable only through newQuery(), and all five call sites read. Repeating the rebuild was wasteful rather than wrong -- each populate*Table() begins with a DELETE -- so this changes no output. Verified byte identical --info on all 23 example projects, and identical --export-bom, --export-wires, --export-cables, --export-nets and --export-wiring on industrial.qet. Its load drops from 5.51 s to 5.31 s (median of 6). Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01L6MRq2Ach1ogvnGcbuqNLr --- sources/dataBase/projectdatabase.cpp | 41 ++++++++++++++++++++++++++++ sources/dataBase/projectdatabase.h | 17 ++++++++++++ sources/qetproject.cpp | 6 ++++ 3 files changed, 64 insertions(+) diff --git a/sources/dataBase/projectdatabase.cpp b/sources/dataBase/projectdatabase.cpp index 1549f6ce0..df686fe12 100644 --- a/sources/dataBase/projectdatabase.cpp +++ b/sources/dataBase/projectdatabase.cpp @@ -53,6 +53,7 @@ projectDataBase::projectDataBase(QETProject *project, QObject *parent) : }); connect(m_project, &QETProject::projectDiagramsOrderChanged, [this]() { + m_content_changed = true; for (auto diagram : m_project->diagrams()) { m_diagram_order_changed.bindValue(":pos", m_project->folioIndex(diagram)+1); @@ -85,14 +86,42 @@ projectDataBase::~projectDataBase() */ void projectDataBase::updateDB() { + //A bulk operation is in progress and updates the database itself once + //it is done : rebuilding now would only be thrown away by that final + //rebuild. @see setUpdateBlocked(). + if (m_update_blocked) { + return; + } + + //Nothing in the project has changed since the last rebuild, so + //repopulating would insert exactly the rows that are already there. + //The signal is still emitted : callers and models rely on it to + //refresh, and what they read back is unchanged either way. + if (!m_content_changed) + { + emit dataBaseUpdated(); + return; + } + populateDiagramTable(); populateDiagramInfoTable(); populateElementTable(); populateElementInfoTable(); populateConductorTable(); + m_content_changed = false; + emit dataBaseUpdated(); } +/** + @brief projectDataBase::setUpdateBlocked + @param blocked : whether updateDB() should skip the full rebuild +*/ +void projectDataBase::setUpdateBlocked(bool blocked) +{ + m_update_blocked = blocked; +} + /** @brief projectDataBase::project @return the project of this database @@ -158,6 +187,7 @@ int projectDataBase::excludedConductorCount() const */ void projectDataBase::addElement(Element *element) { + m_content_changed = true; if (!element || !element->diagram()) { qDebug() << "projectDataBase::addElement: null element or diagram"; return; @@ -182,6 +212,7 @@ void projectDataBase::addElement(Element *element) */ void projectDataBase::removeElement(Element *element) { + m_content_changed = true; m_remove_element_query.bindValue(":uuid", element->uuid().toString()); if(!m_remove_element_query.exec()) { qDebug() << "projectDataBase::removeElement remove error : " << m_remove_element_query.lastError(); @@ -196,6 +227,7 @@ void projectDataBase::removeElement(Element *element) */ void projectDataBase::elementInfoChanged(Element *element) { + m_content_changed = true; auto hash = elementInfoToString(element); for (auto str : QETInformation::elementInfoKeys()) { m_update_element_query.bindValue(":" + str, hash.value(str)); @@ -210,6 +242,7 @@ void projectDataBase::elementInfoChanged(Element *element) void projectDataBase::elementInfoChanged(QList elements) { + m_content_changed = true; this->blockSignals(true); //Block signal for not emit dataBaseUpdated at //each call of the method elementInfoChanged(Element *element) @@ -226,6 +259,7 @@ void projectDataBase::elementInfoChanged(QList elements) void projectDataBase::addDiagram(Diagram *diagram) { + m_content_changed = true; m_insert_diagram_query.bindValue(":uuid", diagram->uuid().toString()); m_insert_diagram_query.bindValue(":pos", m_project->folioIndex(diagram)+1); if(!m_insert_diagram_query.exec()) { @@ -254,6 +288,7 @@ void projectDataBase::addDiagram(Diagram *diagram) void projectDataBase::removeDiagram(Diagram *diagram) { + m_content_changed = true; const QString uuid_str = diagram->uuid().toString(); //Order matters: element_info and terminal are scoped through a @@ -309,6 +344,7 @@ void projectDataBase::removeDiagram(Diagram *diagram) void projectDataBase::diagramInfoChanged(Diagram *diagram) { + m_content_changed = true; bindDiagramInfoValues(m_update_diagram_info_query, diagram); if (!m_update_diagram_info_query.exec()) { @@ -320,6 +356,7 @@ void projectDataBase::diagramInfoChanged(Diagram *diagram) void projectDataBase::diagramOrderChanged() { + m_content_changed = true; } /** @@ -328,6 +365,7 @@ void projectDataBase::diagramOrderChanged() */ void projectDataBase::addConductor(Conductor *conductor) { + m_content_changed = true; if (!conductor || !conductor->diagram()) { qDebug() << "projectDataBase::addConductor: null conductor or diagram"; return; @@ -361,6 +399,7 @@ void projectDataBase::addConductor(Conductor *conductor) */ void projectDataBase::removeConductor(Conductor *conductor) { + m_content_changed = true; m_remove_conductor_query.bindValue(":uuid", conductor->uuid().toString()); if (!m_remove_conductor_query.exec()) { qDebug() << "projectDataBase::removeConductor delete error : " << m_remove_conductor_query.lastError(); @@ -381,6 +420,7 @@ void projectDataBase::removeConductor(Conductor *conductor) */ void projectDataBase::updateConductor(Conductor *conductor) { + m_content_changed = true; if (!conductor) { return; } @@ -423,6 +463,7 @@ void projectDataBase::watchConductor(Conductor *conductor) */ void projectDataBase::conductorPropertiesChanged() { + m_content_changed = true; if (auto *conductor = qobject_cast(sender())) { updateConductor(conductor); } diff --git a/sources/dataBase/projectdatabase.h b/sources/dataBase/projectdatabase.h index 7964bb093..2ce9266bb 100644 --- a/sources/dataBase/projectdatabase.h +++ b/sources/dataBase/projectdatabase.h @@ -47,6 +47,17 @@ class projectDataBase : public QObject virtual ~projectDataBase() override; void updateDB(); + /** + Suppress the full rebuild performed by updateDB(). + + While blocked, updateDB() returns immediately instead of + repopulating every table. Meant for bulk operations -- notably + loading a project, where each table model re-queries the + database as it is built and would otherwise trigger one + complete rebuild of it. The caller unblocks and calls + updateDB() once when done; @see QETProject::readProjectXml(). + */ + void setUpdateBlocked(bool blocked); QETProject *project() const; QSqlQuery newQuery(const QString &query = QString()); QSqlDatabase database() const {return m_data_base;} @@ -97,6 +108,12 @@ class projectDataBase : public QObject private: QPointer m_project; + bool m_update_blocked = false; + //Starts true : the database is empty until the first rebuild. + //Set by every method of this class that writes rows, cleared by + //updateDB(). Callers reach the database from outside only through + //newQuery(), and every such call site reads. + bool m_content_changed = true; QSqlDatabase m_data_base; QSqlQuery m_insert_elements_query, m_insert_element_info_query, diff --git a/sources/qetproject.cpp b/sources/qetproject.cpp index be8df383f..18429779d 100644 --- a/sources/qetproject.cpp +++ b/sources/qetproject.cpp @@ -1547,6 +1547,11 @@ void QETProject::readProjectXml(QDomDocument &xml_project) } m_data_base.blockSignals(true); + //Blocking the signals is not enough : every table model built below + //re-queries the database, and each of those queries used to trigger a + //complete rebuild of it. The content being loaded is the same for all + //of them, so a single rebuild once everything is in place is enough. + m_data_base.setUpdateBlocked(true); //Load the project-wide properties readProjectPropertiesXml(xml_project); @@ -1586,6 +1591,7 @@ void QETProject::readProjectXml(QDomDocument &xml_project) const qint64 refresh_ms = phase_timer.restart(); m_data_base.blockSignals(false); + m_data_base.setUpdateBlocked(false); m_data_base.updateDB(); const qint64 database_ms = phase_timer.elapsed(); From 73250bd746791feadca96e3c634657cf730c3c8a Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 12 Sep 2026 17:26:40 +1200 Subject: [PATCH 90/95] Do not rebuild the project database while destroying the project Destroying a project cost more than loading it: on a 1000 folio project --info reported its work done in 160 s but the process ran for 657 s, and the difference was ~QETProject(). Timing each destructor puts 94 % of that teardown in ~QetGraphicsTableItem(), with the cost per table doubling as the project grows (48 ms at 100 folios, 122 ms at 250). The database's own per-element deletes are 1 % of it and linear; element and conductor teardown is linear. A table destructor repairs the chain it belonged to, which relinks the neighbouring tables, which assigns a model -- and one branch of setPreviousTable() builds a fresh ProjectDBModel, whose copy constructor calls setQuery(), which rebuilds the whole database. Destroying a 250 folio project did that 12 times, for a project that is being thrown away. So block the rebuild for the lifetime of the destructor, next to the blockSignals(true) already there for the same reason. Nothing can observe the result: the database is destroyed moments later as a member of the project. Teardown drops about fivefold at every size measured -- 1.30 s to 0.26 s at 100 folios, 7.75 s to 1.73 s at 250, 19.92 s to 4.02 s at 400 -- and the number of full rebuilds in a run stops growing with project size. Teardown is still superlinear, now dominated by QetGraphicsTableItem::setUpColumnAndRowMinimumSize() measuring every cell of the nomenclature each time a chain is relinked. That is left alone here. --info stays byte identical on all 23 example projects, as do --export-bom, --export-wires, --export-cables, --export-nets and --export-wiring. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01L6MRq2Ach1ogvnGcbuqNLr --- sources/qetproject.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sources/qetproject.cpp b/sources/qetproject.cpp index 18429779d..8b5171a21 100644 --- a/sources/qetproject.cpp +++ b/sources/qetproject.cpp @@ -160,6 +160,11 @@ QETProject::~QETProject() //We block database signal to avoid hundreds of unnecessary emitted signal //due to deletion (diagram, item, etc...) and as much update made in the not yet deleted things. m_data_base.blockSignals(true); + //Same reasoning for the rebuild itself : destroying a table relinks + //the tables that were chained to it, which re-queries the database, + //which rebuilds it completely -- for a project that is on its way out. + //Nothing can observe the result : the database is destroyed with it. + m_data_base.setUpdateBlocked(true); //Each time a diagram is deleted we also remove it from m_diagram_list //because a lot of thing append during the destructor of a diagram class From a8df5e3df9b8cc9c1c42acf2858ce748e9983813 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 12 Sep 2026 17:44:14 +1200 Subject: [PATCH 91/95] Compile the element style pattern once instead of once per primitive setPainterStyle() built its QRegularExpression as a local, so the pattern was compiled from scratch on every call -- and it is called for every graphics primitive of every element instance a project places. A callgrind profile of opening examples/affuteuse_250h.qet put 28 % of all instructions inside libpcre2, and 12 % of the whole run inside this one function. Making it static const compiles the pattern once for the life of the process. Nothing else changes: same pattern, same matching, same named captures. Measured with callgrind, which counts instructions and so does not depend on what else the machine is doing, opening examples/affuteuse_250h.qet: 4,801,381,735 -> 4,297,629,948 instructions (-10.5 %) setPainterStyle 582 M (12.13 %) -> 79 M (1.83 %) --info stays byte identical on all 23 example projects, and so does every SVG this produces for industrial.qet -- which is the output that would change if the styles were parsed any differently. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01N64mk33R9GdbU1PkYcc9SP --- sources/factory/elementpicturefactory.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sources/factory/elementpicturefactory.cpp b/sources/factory/elementpicturefactory.cpp index cf0d89bf6..1b256aff9 100644 --- a/sources/factory/elementpicturefactory.cpp +++ b/sources/factory/elementpicturefactory.cpp @@ -621,7 +621,11 @@ void ElementPictureFactory::setPainterStyle(const QDomElement &dom, QPainter &pa //Get the couples style/value const QStringList styles = dom.attribute("style").split(";", Qt::SkipEmptyParts); - QRegularExpression rx("^(?[a-z-]+):(?[a-zA-Z-]+)$"); + //Built once : this runs for every primitive of every element + //instance a project places, and recompiling the pattern each time + //was the single largest cost of opening a project. + static const QRegularExpression rx( + QStringLiteral("^(?[a-z-]+):(?[a-zA-Z-]+)$")); if (!rx.isValid()) { qWarning() < Date: Sat, 12 Sep 2026 18:00:01 +1200 Subject: [PATCH 92/95] Cache the drawing of element definitions that have no uuid ElementPictureFactory caches the QPicture it builds for an element definition, keyed by that definition's uuid. Definitions saved before uuids were written do not have one, and every one of them presented the same null uuid. getPictures() spotted that and took an uncached path, so the drawing was rebuilt from the XML for every instance the project placed. Counted on the shipped examples: examples/m_000.qet 831 builds for 97 definitions examples/affuteuse_250h.qet 256 builds for 106 definitions examples/industrial.qet 65 builds, 553 cache hits (has uuids) 13 of the 23 example projects carry definitions without a uuid, so this is not a rare shape. Derive a key from the location when the definition has no uuid of its own. ElementsLocation::toString() qualifies an embedded path with the id of the project owning it, and QETApp hands out project ids from an ever-increasing counter and never reuses them, so the derived key cannot collide with an element of another project. Measured with callgrind, which counts instructions and so does not depend on what else the machine is doing, opening examples/affuteuse_250h.qet: 4,801,381,735 -> 4,285,411,908 instructions (-10.7 %) ElementPictureFactory::build 995 M -> 478 M ElementPictureFactory::getPictures 1289 M -> 774 M The halving of build() matches the counters independently: 106 definitions against 256 instances is 41 %, and the cost falls to 48 %. This also retires a latent aliasing bug rather than a measured one: build() inserted into m_primitives_H under the same null uuid for every definition lacking one, and getPrimitives() read back through that shared key. Its only caller is the image export dialog, which the command line does not reach, so no wrong output could be demonstrated here -- but the entries could only ever have belonged to whichever element was built last. --info stays byte identical on all 23 example projects, and the SVG export of affuteuse_250h.qet -- a project whose definitions all lack uuids -- is byte identical too. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01L6MRq2Ach1ogvnGcbuqNLr --- sources/factory/elementpicturefactory.cpp | 47 ++++++++++++++++------- sources/factory/elementpicturefactory.h | 1 + 2 files changed, 35 insertions(+), 13 deletions(-) diff --git a/sources/factory/elementpicturefactory.cpp b/sources/factory/elementpicturefactory.cpp index cf0d89bf6..b8de3cf38 100644 --- a/sources/factory/elementpicturefactory.cpp +++ b/sources/factory/elementpicturefactory.cpp @@ -36,6 +36,33 @@ ElementPictureFactory* ElementPictureFactory::m_factory = nullptr; +/** + @brief ElementPictureFactory::cacheKey + @param location + @return the key under which the drawing of the element at location is + cached. + + An element definition normally carries its own uuid, and that is used + directly. Definitions saved before uuids were written do not have one -- + a good share of the shipped example projects are still in that state -- + and they all presented the same null uuid as a key. The drawing of such + an element was therefore either rebuilt for every instance placed, or + stored under a key it shared with every other element lacking a uuid. + Derive a stable key from the location for those instead: + ElementsLocation::toString() qualifies an embedded path with the id of + the project that owns it, and project ids come from an ever-increasing + counter and are never reused, so the derived key cannot collide with an + element of another project. +*/ +QUuid ElementPictureFactory::cacheKey(const ElementsLocation &location) +{ + const QUuid uuid = location.uuid(); + if (!uuid.isNull()) { + return uuid; + } + return QUuid::createUuidV5(QUuid(), location.toString().toUtf8()); +} + /** @brief ElementPictureFactory::getPictures Set the picture of the element at location. @@ -50,12 +77,7 @@ void ElementPictureFactory::getPictures(const ElementsLocation &location, QPictu return; } - QUuid uuid = location.uuid(); - if(Q_UNLIKELY(uuid.isNull())) - { - build(location, &picture, &low_picture); - return; - } + const QUuid uuid = cacheKey(location); if(m_pictures_H.contains(uuid)) { @@ -80,7 +102,7 @@ void ElementPictureFactory::getPictures(const ElementsLocation &location, QPictu */ QPixmap ElementPictureFactory::pixmap(const ElementsLocation &location) { - QUuid uuid = location.uuid(); + const QUuid uuid = cacheKey(location); if (m_pixmap_H.contains(uuid)) { return m_pixmap_H.value(uuid); @@ -114,9 +136,7 @@ QPixmap ElementPictureFactory::pixmap(const ElementsLocation &location) painter.translate(hsx, hsy); painter.drawPicture(0, 0, m_pictures_H.value(uuid)); - if (!uuid.isNull()) { - m_pixmap_H.insert(uuid, pix); - } + m_pixmap_H.insert(uuid, pix); return pix; } @@ -132,10 +152,11 @@ QPixmap ElementPictureFactory::pixmap(const ElementsLocation &location) ElementPictureFactory::primitives ElementPictureFactory::getPrimitives( const ElementsLocation &location) { - if(!m_primitives_H.contains(location.uuid())) + const QUuid uuid = cacheKey(location); + if(!m_primitives_H.contains(uuid)) build(location); - return m_primitives_H.value(location.uuid()); + return m_primitives_H.value(uuid); } ElementPictureFactory::~ElementPictureFactory() @@ -270,7 +291,7 @@ bool ElementPictureFactory::build(const ElementsLocation &location, painter.end(); low_painter.end(); - const auto uuid_ = location.uuid(); + const auto uuid_ = cacheKey(location); if (!picture) { m_pictures_H.insert(uuid_, pic); m_primitives_H.insert(uuid_, primitives_); diff --git a/sources/factory/elementpicturefactory.h b/sources/factory/elementpicturefactory.h index 63536a38a..f840a9dc8 100644 --- a/sources/factory/elementpicturefactory.h +++ b/sources/factory/elementpicturefactory.h @@ -92,6 +92,7 @@ class ElementPictureFactory ElementPictureFactory operator= (const ElementPictureFactory &); ~ElementPictureFactory(); + static QUuid cacheKey(const ElementsLocation &location); bool build(const ElementsLocation &location, QPicture *picture=nullptr, QPicture *low_picture=nullptr); void parseElement(const QDomElement &dom, QPainter &painter, primitives &prim) const; void parseLine (const QDomElement &dom, QPainter &painter, primitives &prim) const; From 20a0a888c75194e4d87e179ed965cdaccd5a276a Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 12 Sep 2026 13:50:03 +1200 Subject: [PATCH 93/95] Fix command-line tools hanging on the table limitation dialog When a placed nomenclature or summary table cannot display every row its model holds, checkInsufficientRowsCount() informs the user with a modal message box. It used QMessageBox directly rather than QET::QetMessageBox, so it ignored the non-interactive mode that main.cpp sets for the command-line verbs, and every headless verb (--info, --resave, --export-*) blocked forever on a dialog nobody could answer. This is the same defect fixed in e3d11a499 for the other modals reachable from the command line; this call site was missed. Found with a gdb backtrace on a hung --info: the process was parked in QDialog::exec() under this function. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01L6MRq2Ach1ogvnGcbuqNLr --- sources/qetgraphicsitem/ViewItem/qetgraphicstableitem.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/qetgraphicsitem/ViewItem/qetgraphicstableitem.cpp b/sources/qetgraphicsitem/ViewItem/qetgraphicstableitem.cpp index 49e57bf68..fd9bbe6ba 100644 --- a/sources/qetgraphicsitem/ViewItem/qetgraphicstableitem.cpp +++ b/sources/qetgraphicsitem/ViewItem/qetgraphicstableitem.cpp @@ -21,6 +21,7 @@ #include "../../createdxf.h" #include "../../diagram.h" #include "../../elementprovider.h" +#include "../../qetmessagebox.h" #include "../../qetxml.h" #include "../../utils/qetutils.h" #include "projectdbmodel.h" @@ -119,7 +120,7 @@ void QetGraphicsTableItem::checkInsufficientRowsCount( text = tr("Les information à afficher sont supérieurs à la quantité maximal pouvant être affiché par le tableau.\n" "Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'afficher l'integralité des informations."); } - QMessageBox::information(parent, tr("Limitation de tableau"), text); + QET::QetMessageBox::information(parent, tr("Limitation de tableau"), text); } } From f6f68871d1913a83ae3d569cb5eda73e6e578aab Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 12 Sep 2026 18:48:13 +1200 Subject: [PATCH 94/95] Include QVariant in bomexport.cpp exportBomCsv() calls query.value(i).toString(). QSqlQuery::value() returns a QVariant, but the translation unit only ever sees the forward declaration that arrives through qobject.h, so the call does not compile: sources/bomexport.cpp:79:50: error: invalid use of incomplete type 'class QVariant' 79 | values.append(query.value(i).toString()); Reproduced on a clean checkout of master with Qt 5.15.18. Qt6 pulls the full definition in by another path, so the Windows CI workflow does not see it. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01N64mk33R9GdbU1PkYcc9SP --- sources/bomexport.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/sources/bomexport.cpp b/sources/bomexport.cpp index eefdd2e94..ef5581016 100644 --- a/sources/bomexport.cpp +++ b/sources/bomexport.cpp @@ -20,6 +20,7 @@ #include #include #include +#include namespace { QString csvField(QString value) From 4e9463ee8ae9e50a1a84c9165b6b0b142808c1c2 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Fri, 11 Sep 2026 23:38:50 +0200 Subject: [PATCH 95/95] Do not install PugiXML and Googletest static libraries. These are only needed during compile time. --- cmake/fetch_pugixml.cmake | 2 +- tests/googlemock/CMakeLists.txt | 2 +- tests/googletest/CMakeLists.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cmake/fetch_pugixml.cmake b/cmake/fetch_pugixml.cmake index 68fb092eb..6aef219f7 100644 --- a/cmake/fetch_pugixml.cmake +++ b/cmake/fetch_pugixml.cmake @@ -26,7 +26,7 @@ if(BUILD_PUGIXML) pugixml GIT_REPOSITORY https://github.com/zeux/pugixml.git GIT_TAG v1.15) - + set(PUGIXML_INSTALL OFF CACHE INTERNAL "") FetchContent_MakeAvailable(pugixml) else() find_package(pugixml REQUIRED) diff --git a/tests/googlemock/CMakeLists.txt b/tests/googlemock/CMakeLists.txt index a8e4dbb76..0e4b403c7 100644 --- a/tests/googlemock/CMakeLists.txt +++ b/tests/googlemock/CMakeLists.txt @@ -65,7 +65,7 @@ FetchContent_Declare( GTest GIT_REPOSITORY https://github.com/google/googletest.git GIT_TAG release-1.10.0) - +set(INSTALL_GTEST OFF CACHE INTERNAL "") FetchContent_MakeAvailable(GTest) include(../../cmake/fetch_kdeaddons.cmake) diff --git a/tests/googletest/CMakeLists.txt b/tests/googletest/CMakeLists.txt index 4ed488f57..34d19ad1e 100644 --- a/tests/googletest/CMakeLists.txt +++ b/tests/googletest/CMakeLists.txt @@ -65,7 +65,7 @@ FetchContent_Declare( GTest GIT_REPOSITORY https://github.com/google/googletest.git GIT_TAG v1.17.0) - +set(INSTALL_GTEST OFF CACHE INTERNAL "") FetchContent_MakeAvailable(GTest) include(../../cmake/fetch_kdeaddons.cmake)

R#+>%Yfo|3An1 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≷-1pm+8ogJI^W>9e!+K5D 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�(i z`H1jFp2@^i^=2x6_L>iaN8wG1S`Wxksab;^xiwgIxt9o7p&PttC$6CdF6WAIPr3J~ z5xwt0dEw1FcbdZ{`r+ukJ7I@#elc@7879ZzcCxM4Rw6OLoQk zzlF}hklNtaidVDy(MR&@Eq_{;T{B7TsPZYGZ@~sz;jD$jaFzUNT!0w^IT3yObn8CU zyxIsYVv0$H?ijka~mQDvcRH zd>AC8pIm%ZtQR z;b=N|GmwshmRL^HEkaQTCb>sZb9OG5@6S`cAXK*ehhy}$jLnz4P>1k$4Mi-`h_PQWRqdZ zq7?a0xp)guxp^68g0n?6t{*U}*(amzq&4XD56c=h^@JIwndX zklT)^4Qtcsy4wX=9(}D>1Q#H121*h0jJ!GZ278K?tqSjk3C&u+2D3-M3oO>0k^d1i J`JEFd{uj*V6#f7J diff --git a/lang/qet_tr.qm b/lang/qet_tr.qm deleted file mode 100644 index aa39e1cd124da7f952ee910f7e86d3e001e5b1d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 312362 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 W^x2PB#cN=3Ik599&kYb5_5TIwus+WK diff --git a/lang/qet_it.qm b/lang/qet_it.qm deleted file mode 100644 index 5df1a62ffee232a42b4d37a0208a9f689e8c9b8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 281852 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 F{~wc(EZ6`5 diff --git a/lang/qet_ja.qm b/lang/qet_ja.qm deleted file mode 100644 index a07876705200d6a5bde6ad73b07a88779faeb7d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 185847 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 YKFiti&3ZfIjzsy6Xckq4KBU?I0HQt~YXATM diff --git a/lang/qet_ko.qm b/lang/qet_ko.qm deleted file mode 100644 index 2b73d45fe818266ac812a65139bb1473dd3a3dba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 248617 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 U{zd6(qn1=0HC*-G#izyp0px7tY5)KL diff --git a/lang/qet_mn.qm b/lang/qet_mn.qm deleted file mode 100644 index d2e7ceb6bb07e7f0991665906924a65d1c7c0cba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 197235 zcmd4)2Yl1j_dkxG*DE{CU=@%V_7KV_d#|!vHZl|mZD<2+Q__~DA_~Y5McGpUL8fe! zB_IV6WGSF12&kZdiV7&m{5|iz$t$mpq~ZPjJpPaW+c!N;n%BMOo_qE=_oms7gyKj4 zTs-G^xl;QEFZ=X|RYasqNqsRkt_@M6rFd0|=(nvL%A>yo>_JlJ(}2B6`uRD)end&X zb0}3G3D}>=U4lcY`Xa#5L{Td^l>WX1IEJKKdLr#gqEEJAvW-O5FouDB&Mjb@4FazJ zLBI#oIh2ZY=TN570*>uLWZ6Wt3(s3l5q3;E`iQRqK;DN}O-bJW1yLOvQCxANjuS{a^%jTnjGu|Rt{^!TpX<7Tq~B+Q z95X==tfBXNM2(XC!lw`fa&uEd}E1#JNgT_dy9Za7Yq0k=4a#o-bBDVGKZ2D?1A?s z>!$)1EhS(%F}_sgJMp^Kn;gnUtAG((1uQvMz=kOTwulojxsHG%#XRyG1I6o4-V*TB z@ud9@`&MQZX|I9jzw8cpkmOlCNPAsF^3VySd-e>;J0eI|{}SH+n{+WNNiKPxbbV!# zlV$@>#J&|H-G}#y3V^*o&LVoNDCzc0AUa!xbo*UItx^Sic_D|=lZqV5jh6`6?px9w zn@#d?iF7A1{@i+`fBAiq3`NPX$3aq&m&kx|q~C^;;Sl&RzLtRVt_!%M5*d!M&#fn8 zl}PaEQ8E=yCAnZnveecQMV=#DpV}nHd`*RaT1xamG(}dPOCjpL;IEmb1pKfVMVl`ZRUgQqbnYFBe*O&6D{oMvdzDE3;s`aJ zaD(WL0o3#-hJPfry8jT~k`QFLYX@5P)!7}PR*GO`cx2W?G z$kT-Hs7sHPMAJ%A?2so!&+HViObrgDqJIcj?llhO68{N!xE^(%9z$~C4C*<050R%K zhmy7t^_p^)=;xW#r&cscg^E(27n?wz{3_rGy$_xeaCVA-AG}X}_dxG>;;8SnInXmp z1RVXYfO`jVDE-h)zAKc_n_P$I5z@OCObpd0Y0uE{};C+mP zze`2O3Rr%gfImOvP@a901{xt>Z6yJR9ixE}m_Ig3z!9Z6l&(~vfm5{j+SWlXw+)nr^+|O;qO=QziKK?){U?s3Gm9wm*n1=onoA=m zV*N)N(a0(PkTmuVjb!v}lgXj<^jcyJk+Zshw`XxERd|&{IkOc__~H}Lc`8jW7e#V{j;6a{GsYIB=`Y_Tsl-b( zquzFsB5gD?W*JGpE}~ibN z(b7Y-t^wwGegYum?D;Qg{VdoN`!lqDANaS)1P-NpyJ^F~#YE%p3V2NBP^yzmn`(3- zdFfW#w6hRN)A|eeK~36pVG_~luV`z_J|s2zhPJPB5v2{IUBhRQ>}@3A2N!AA>S08M zo)z$i|2UN2nn?%#0zLX1qt6#bk<{)1eg6Anl8Qf1N2Zq`srd=|@_mf^No6{IJe{PM z7t_g)+d^(j)9LF9DT*lUeMKb8Ovr* zS4q;oDxmcaJ&BiyX3dwRm@*_ws|0+xs${Hso20kil#CmHChAf|vTTOUJ+MQv_Bl(^ zkSS8Z$`VP{_e+J=!za3Nn?t$9I|8O}mkJMnjrSx-MORNGxp`x$?DPsGJ$FJX9|?Y{ zRZl8kx&_Jhby9WH6ZlE9rJCo!ue-ETowZnJX}46@+aG#)uGIKsW1>+FrDje3gFIiB znxBMUv9f@G8%|3ts@H~IUoLf>d4Oo{DXEVg_H63{sn4E&h#q|_^`C-$-shEG{3;rJ zJzk1`1b=7tzf$t*{UjYfBc)7?Bzdh%O3i>CzV=8O(WM0TeYNDhJc(q>Kq=j{6Q4_$ z((6W&wCJjo{^kJajhCd1#iK~>^|h37B8{lnbZOLJ@PE(F(&$UzyJOp>amG}lb015S z+QVP_;(;`29{9KKWdWTh1a#k%-uU)ak|VB5(~@?O)X6QqyQeHkW!{!%H(~mIlr-mW z>}x`4Y01VcqLPE9r9Zz&v?*Cy<|<55`~Rd5cb_5pe5thRk4YpsevsC_1%3b7Bx&uQ z?}=WWEp0lQN#v?1Z5{-Bm(*R_;+;d%{vOhn^XrMskEHF7u8>qLUfPig{kdzUw6`VJ zJN;b&KbS7y!G+S%jZ;a^ijz)$3BD|~SUT0}({OZnOgbl|3x|*5oXa zsjqZ1YZb}v1=3%uvPfPXFWsJB3wW-UZvXZ-N!NEv_eUKfvKgg^RX-ppy0$E>VSg_z z%lGe*wDz=Ys0jW&k}jJ*V)|u+9P!or@b6~Gwr_8c^r($oI0|_E_KqAm5OnVHk6d(f zTcVcFaVR}5B|kG8pS#^wF7q1n*ZRJ4IqFPuse1x`(N3;-Wjjf&*2vZ5m2l!p%Jo+C zg#YkF?l5L6Nt0K|on8fBMgA#w(M}^O`b6#;2Yt3_uN-?4{3pFHcRQ7U{i!YYS}_cI zv!vW_SrL-vHxzL5@A3fia+1E8ArD>+{{8TR9Dn67$uCZl6Dn_jKk`T(ni&QE?V6l; z@D64)-;Wzb92 z?DEdO@Y&mqllPo$34bI*-fITm(>)HQv%BPdJqMAzceuRoa37+AE#&S8V(UI};fr&4Yr0*o4JwZOOc^33cR{`f`3i!!IIcsWXq6rn`&kf}f*Hn-X zAA_E|JDNjT8YrNtoP4C)R+10xl8?5%L2~g$@|Rfrt}T|& zx6}~rsU%;T1V6NY8Tr}_9Z8jY$k%p)PODFGD7`mOzFr%8^vdh<@AqP`Pgw%4*(BeY z4?gaELB6X4eR`$HcOPFR`M@jkBc`w0+B9?m`svHhHTH3sXVY(*$gk>w9;-Da$HgIT ziPMy-(j4}_tETLaM@UMnrKu1VPxR7fnhGgQzZB6_)2jP6g;F_Wfeua)qV+?t+C7Lq*g zzGgtfFTh{rG%r>^06*2K8G6M8{aiznw7LoSex+u3f!QRT?4ucewjEK=x|-p?mM3~= z2#3$46`4PTP$5ZL8+(^fe@RAEJ5tY$c-0uWH_1 zq9y6;1Dbi&uM_>{)Xe`C@7wxm7Op!=QkQ$0g&Q9ey?sox_z&<~|D&2E9mIEhg!^Uo|@nF<9p|%^uGr zlD@B{`RulfcwY05a{%1CN}7jdDuK_6Y93~Q z4&7#J9__70lKqy}{8eF+I()A!notJuiB*Pu-te~zTslG@ZBu+OKhTF+xViw7Kl97byw51a&l zD?`BEs|0j+)GnTe_0T}=huya$uHCF%-52tCXrFfVDy%~@Prz|owQKsV#QWp5>;J3{ zJAZ^jd2Xh5V>`^hYl?PbEc}iO?`k(rK#u6|c^pbbeh~1MQ@c661j&1z)9xIMaSA^x zV4o5Ky2lInV`mQK^u_|t#OLn+1NxoeP=0fZc9*Uq{MRV$uHu+CVZMO>+}7?YGlyvC zUjqL3Cx`N=N!s0Jtbb;zcK44m;=Mn#`%8e2`x&(RS^nhTGTKACz-P1D3%L5A_V9ez zU-Nzer+uP5G9BxxzFfdAO9gzlnt%_xa40=fL%=Gl1oS)+aM30K&zP9xJP?(y7vnB(?|~G z^f3a?+^9X@9{OuijQ0F*@K4T|wLi6hT-HCTz4kfgGoRO9Pj-=%K3sdF{AnUZz1=Q({v{0_k7-7SGbsme%u zT?_kA&BdYI`k}7gap=i~Q*;e8wn2Z7*ENcmgnUgaU8Bfi&=VeAqXn?LNe*4p9>{c7 z9ieMg3wmRAl&-^Hkk9YO=sHz{UPwsLb^US@@}K89loy+t<%h?*?v)}*8uX5? z@2rnw7ay>#Q( zLEmg_p?mG+e-Phv&`pSj|GLnjn?4Y7e|WWS?uwfvuX9RvUe0o2d?W*j`Aqq4viQjY&VNRc~t{gONmaa=#$FYiOnkAA7U-bn|ydZU2rn(1y-WBbrjz^b3<{um7V`o&wi zzwd4*x$i~YljnYd-|o~~>UAgi(@T0w{emQIiPBqcwt(IENpD?pgyj9j^o6EvKs@rH zzKHV-?9*id7kIlb-0y)EY!o{42fV>nPau z2z}+>C!-EznI4uYa2;Gfu#LCJrUd0Rg|;$)TJv zR=_RC^szTqk~CP>$Ju9+yl-&&;~(Wo%VZ~UT9e-HJL zRXz1De+#}i^0)q#I)_Pazgz!mTlh~Svh?GdM#3LzqJOOot2vbJ9M@0XIE$pEee`eFgB+$G z6)y5f ze|7=!mQKHV-3jQUK>{W&=1^L8Rli~BMCk3U`i;@B%cC#rH!gdB7D&HX~Zjk=t z<_R2|zA;mgciXMsHwSs5w)6B^FM$qUEz+NS z{RGL5efqCvHY2+Aum0-^6G*!JvHtYZPN*9U)}MZ?L*9M9{!C9if4YMHOy)Br{n%fB z=7<~a_dfkM(a5KLazOv>Z1C&kh5B<|*fq(nzj$jo(b}FIN{ye@Un&4P&Y7V9(R7+* z?F|9PkJkV0g!~oSC}7)n1)TUMhw||2`rqTr!0(UK|1k-C*FQ!7$0EcDQ)=q}yf=;L zl_-O$Gv+Hg!eAXXlcZPc3HZZELxI^JkkscDL-9E)v7i4LO5X;*j~Q=p+%*whj4@Qu zBcIrMxuHV+J<#u;8mf3#A>L_hsEvAsw7iUf>n|AUq;E&w{Jf!F4CMO!JwxL!5O=K| zVrYDAEd1h;hL-(ikX)jlp<@=-cjI3}$Dd)Rn(Z@m*22GgeZPPUj~lpMZxhX-^klUm z_M{u@dT8i9-bPZ!S^*ck4Sj1s-#tIx(6?7TlHSNL3|M1;z0ev4z6;p>6T|cJ9N6dT zhWJeA3)@YD=U?cn4Kp~D8k97ob;11YKQ@fmdxogm9E10D9Z7#S0)(9H9&8xBQ$}62 z0f*Am+J-T+E8*{33}ZI5MO^l?VQhbyq*=`kuRg?l@iPsRD}w$Oli^JR#(TfN;jP|~ z%al07J4LsE56T*5GI+hcVXoz8@RNf>>9tk{Zl77V;aH2mh~ArLICcqqKBBwf#DG4C z$GUMS-Dzn!Tjx)bjB5le;08q9X8I8U*Xj&sV~ofPTr`{=41M;@W5ahI%;VZ`xTGxt zKl{Gna`8-(Chjp@{s#M7VzJ?BonAz(v>Zy0k8miry=}NUs0s2^zZ zo1~X!8U8(ixbJ3D!@Z6+#Oo&v4{kwzk5(`|d=GT0a6`bqM;hhmlaP}%qx{0phzox* zYRWGJzm^g3{xS}w`_qj2=a)ktdyJ8DTEN~{;!xhP+gKF-4&8W#Lut?eV--E{*1c`4 zslNz%UoqC4m5zEqIb)O&bQ{#jSeNO6bA>sSww^ae@5i{)yBX{C+zYug3pjnavECCG z(VLx&ja#ln9k9Bw@l?G2@oi&Vm9fazoe=QW#~ey`W*Fm8Pow?AjNPyHA!(<}*n9g$ zk_+rI_VFGkDQc^+&jI)~L+%PVZ?k~6Y8v~!=t7)-!`MIJIPBys`y;bo)og=tvF z;GP1`{nqG;D~CM1&6rdV`r^S~#^J>qlXRkxG5L>`h(A0WN~gLSQ(ox^KYx@l^$zsL z<<>@T1K6pAUyU#A>P51CsDKk58pk~siF{pE)%Le1Z0r!#L%`z@}1NLp3fkU~*HsfO5UgY6E zHhxgvOVWTc#t+}e{%%=r{BU%IYheASyn*)vVR(PfPvEt&xSI&R$5KMHzp zvT=Kd?}(-@Gw%EucG0}dxM%!X_+5tuT=t1^?;YfUPAoC*-+_7BR28sCdjYpEHSXU9 zzopbTe>9%iR}p+yOF-LF z<9Cc6RSm}TeGVh9vLrv0KR-K+Iab1Z`3W$b10XYBjAxl zL(^zZ|~`J$l*rt7|z)Ln|BqC=GtT z)71D^H5W-ux(Yb`fPf$TEa1V1#ye*V!G29P-fI{GJ}7E@@Y!|vNsEk+dg+kIZD!J! zh8{gt!DN2D1W8Sonj$`21Am~f$@1ea$m0W(J@yvrMmu5`JEbb(b?G z{S5uo_bpS>oq9x?w@vPD;NOg%CiiBRUrjc-ckdx-V3cXt6Rcz45z}z=4^jW~rr~eE zo-N;ON{*cZdHTVWxnUB?t!A5E)&sAh1x>G@rAUgaVw!jeev~)HG8eluXPfUmQE^6^HUWWlg7gL%y0;H=SO78}|H(=}cQ0^|jKbvnBhJ z^x9a{`5m9YKiXxwd;$C4J;`+KEabS>Q301Fntqef->^8#^!rzR;KzPv`g6)rk`40& zoOIT7`z`ocbrzd$|9S)RHQjXgCGh{B*G%`$r-CnTm>w^|`YIGKJ^mW&Dfp#X>zxJr zS;uVJG8^@jFU=9fGGPz@HCrlNN1fqKv&FN8sOdVheJteX{Rid(Q=pF~7B&~A1mu-; z<|0Kg-X{~yMMgQ%S8)b#2+2(yfboFIfC+#*0HI%-X#s}3he$RJ z7jVi0bNOlD)A^;%<=<^i(#x#`T>6cG`)-&kO+E{`K54G~KJu?q51FH{e+~PPDPY|U z0lS7>wtzoM=EN^uh$}Cf6Mux?eRQCC*v@R8O$<=J0}s_ZpS|F9QH*NU6xcUp|R!$|XzkIQ(<$D7w0wjqD#Hm@zYlcYUM%xlviM{S-nue~}0c-Awo?>`9s z`%&}yxsdyYMFrejmP6^^cR7?tv@w6AWAprE-Vg@f9*J@0cq2-Whx_qH$%qQauAO`DgnHkEh`P5R&&f9<8WfC%-_t&#@j>kC?v#ke*B25s*u$ap&u0-$i(#B8 z?IT+4??dt^Iil;-+j!&Ch6_3;IHOO*+co>c5BM@-#@<=*Ltcn@$0!pmsvj}CA@u%?#E7~2 zu~?TWV&Rw2Yd!ZyydUudb=7MTOW&W5{a7R522aGYb7x5Y_)x^^tTpI|nh>!jD-L}# z1tQj!#=g&bJ7P~^$mvmM#9lM#UA#VrQqlDs%Eh$;e*SyJzUHud^FD|;va1BqwEG;& zDG3or_Vot8{26iV)waklb&B}fmhdOd7 zxju}zyt)G7tkN9H#bYC`mpX{N(OVIJcc}n=NshSnHO9NhWJkJTQYkMQaK8VoJn=FCnLwDp@pp(Kj+fw&?07k+kN%MSpD~>N?L^ zY=%_y{qz;k+Rsv;;&zhcZUTPuho#_b=(Ew21$^(arO=yN^h+(X6s=pIK7D4ifTfpMY9Q}S4a^)$|CHrW&a_x+ zFW3nGb-yJ#4R*ZmE0*XjpyR$@EcK@xK;946o&kbyJLyz zbOv?PZ!BHk>jOR9LBP3HE!_u0Z}u->=~2BR@&gYoJ?223bf+wRYr@Yc^uDEU`!?v; zn8cyHVzQ;5@ecY={;<5z7yJ9+5{ok(&l@`m`142(<*gdakdZN{uaC7PvwHfkl`Wo$ z)1W68awz?K#*#7S2IO{wC1clBy`<~-^dByS|&}0zx6^B%k!ZE%c-uB;O9}6Q?dU*FK1c4s*-?u_j1eEChSAp0n4|Y zZ=vTs#`5h@jAPwmx$wtlsLPY((!y;dRa_`w<;Md4(cN-+JmkAU7Y-$Pv4H=)V7bit zl`@xEewhQm;e~0IUp?(m511ohwT}h78Ev^Xq%QIqcLZE&5^!H}%e7UNh`LX;+<3el z{`hYkO82XAD4U?>GcBwUi#Sb_rZdg@22IJ;}P~H#&UNC;=2YtEq70y zMnA+w%YRF;{sK_~UO300)cX|yKmNh;-ycJuhwBJ9bAf={QZ4`e`8xUz8d&b9V!g%R zv^+{fUUKR%%cJx^Q70~9r8LmzN}N@*1AkxohE;#91nNe!1Wem3;E2}+oSa}a9L$7& zyOu-g$qQCTD&qZdwXNme`~dlkD%P3}ec4z+v^c$Iw9+VavYVPDK16!?d+X{R*sr}itgA<-l00^jb<5|)&`(y^x~(qgxTi6P^30po9qXa5 zmK?I~iTsR6pJv_D2>PSr5bOS)@IPEzt%v7p#}ZaoylYw-j*N zat@_h4F$YZ(R!sn^y}dD)~kj?B+Z>H;K`lVUpAkH-(Ft8SC?A($*2UhFfN6sM6 z@V$Uz9$RnC_<+c=+;4m<8zU2 z0SDg`a9$PbL2jMOfcw&w{qHn@#XT z{;^ef0{%*#W~*^;BI4`jwq~_DBmVix)@;`^s6#ZhHLukQ^J;C)PyPgYe`;&}$`g`T z{9tQ61NL+CT3fq*eTaT}!`A7$Tgacyw{>am!oDrG#l}}cJRQTKoN~j~Eo}nP@x!+6 zyRhHAYX~@aGlz1@Rsp?tZGC59AN!xO4H=_B-D0B6^~Mgw#j9+tjo_n!2W`V}hDdgP zZ}Sv~zi_LrZA2l^zmeTG!VUX9Yny